Homelab GitOps
Prerequisite: This project requires the K3s cluster set up in K3s Lab Automation. Complete that project first to provision the servers and VMs.
Kubernetes homelab cluster managed with Kustomize and deployed via Argo CD using GitOps principles.
Overview
A GitOps-based Kubernetes homelab that uses Argo CD for continuous deployment and Kustomize for configuration management. The cluster runs Google’s Online Boutique microservices demo application as a proof-of-concept.
Role
Owner - Designed and implemented the GitOps workflow
Technologies
- K3s Kubernetes (1 control-plane + 3 workers)
- Argo CD (GitOps engine)
- Kustomize (configuration management)
- Traefik (ingress controller)
- VMware Workstation (virtualization)
- Git (version control)
Repository
GitHub: jmartinez-homelab-gitops
Screenshot

Architecture
- Cluster: K3s on VMware Workstation VMs
- GitOps: Argo CD for declarative continuous deployment
- Applications: Google Online Boutique microservices demo
- Ingress: Traefik (K3s default)
- Structure: Apps, Bootstrap, Infrastructure directories
Key Features
- Declarative GitOps workflow with Argo CD
- Kustomize overlays for environment-specific configurations
- App of Apps pattern for managing multiple applications
- Bootstrap script for initial cluster setup
- Traefik ingress for external access
Directory Structure
├── apps/online-boutique/ # Application deployments
├── bootstrap/argocd/ # Argo CD bootstrap manifests
├── infrastructure/monitoring/ # Cluster-wide services
└── docs/ # Documentation
Related Documentation
This project has detailed documentation in the knowledge base:
- Phase 0 - Argo CD Setup: Initial Argo CD deployment
- Phase 1 - Observability: Monitoring with Prometheus, Grafana & Loki
- Online Boutique Fix: Fix external access via Traefik Ingress
- Kubernetes Learning Path: Complete task list for homelab learning
Quick Start
# Bootstrap Argo CD
cd bootstrap/argocd && ./bootstrap.sh
# Validate Kustomize builds
kubectl kustomize apps/online-boutique/overlays/lab
# Check Argo CD applications
argocd app listAccess URLs
- Online Boutique:
http://boutique.lab.local - Argo CD UI:
http://argocd.lab.local