How pierreh2/homelab works
This repository describes a single-node K3S homelab managed through ArgoCD GitOps. An operator bootstraps ArgoCD, applies the central App-of-Apps configuration, and ArgoCD deploys applications in dependency-ordered sync waves. The runtime stack covers networking, TLS, identity, registry policy, observability, and user-facing services. Edges below reflect README statements only; source excerpts were unavailable, so implementation-level calls and finer data flows are not shown.
Main entry points: argocd ArgoCD · authentik/application.yaml Authentik · envoy-gateway-system/application.yaml Envoy Gateway · prometheus/application.yaml Prometheus
Components 20
GitOps Management
- ArgoCD
central-argocd/argocd - Central AppSet
central-argocd/central-application.yaml - ArgoCD Config
apps/argocd-config/application.yaml - Argo Rollouts
apps/argo-rollout/application.yaml
Cluster Platform
- Envoy Gateway
apps/envoy-gateway-system/application.yaml - MetalLB
apps/metallb/application.yaml - cert-manager
apps/cert-manager/application.yaml - K3S Cluster
Identity and Security
- Authentik
apps/authentik/application.yaml - OAuth2 Proxy
apps/oauth2-proxy/application.yaml - Harbor Registry
apps/harbor/application.yaml - Kyverno
apps/kyverno/application.yaml
Applications and Observability
- Prometheus
apps/prometheus/application.yaml - Grafana
apps/grafana/application.yaml - Kubernetes Dashboard
apps/k8s-dashboard/application.yaml - HTTP Server
apps/http-server/application.yaml - Plex
apps/plex/application.yaml
Other components
- Operator
- Internet Users
- NAS Storage
Connections 24
- Operator → ArgoCD: bootstraps
README.md - Operator → Central AppSet: applies
README.md - Central AppSet → ArgoCD: configures apps
README.md - ArgoCD → MetalLB: deploys wave 0–1
README.md - ArgoCD → Envoy Gateway: deploys wave 0–1
README.md - ArgoCD → Harbor Registry: deploys wave 2–3
README.md - ArgoCD → Kyverno: deploys wave 2–3
README.md - ArgoCD → cert-manager: deploys wave 2–3
README.md - ArgoCD → ArgoCD Config: deploys wave 4
README.md - ArgoCD → Argo Rollouts: deploys wave 4
README.md - ArgoCD → Authentik: deploys wave 9
README.md - ArgoCD → OAuth2 Proxy: deploys wave 10+
README.md - ArgoCD → Prometheus: deploys wave 10+
README.md - ArgoCD → Grafana: deploys wave 10+
README.md - ArgoCD → Kubernetes Dashboard: deploys wave 10+
README.md - ArgoCD → Plex: deploys wave 10+
README.md - Envoy Gateway → Internet Users: exposes apps
README.md - cert-manager → Envoy Gateway: issues TLS
README.md - Authentik → Grafana: provides SSO
README.md - Authentik → ArgoCD: provides SSO
README.md - OAuth2 Proxy → Prometheus: secures exposure
README.md - Kyverno → Harbor Registry: enforces registry policy
README.md - Prometheus → Grafana: feeds metrics
README.md - K3S Cluster → NAS Storage: stores persistent data
README.md