Ops-lab
Production-style Kubernetes platform with GitOps
My own Kubernetes platform, built to practice the full delivery loop end to end: every commit is tested, built into multi-architecture images, published and rolled out by Argo CD.
GitOps on Kubernetes
Highlights
- GitOps loop: GitHub Actions → GHCR → config update → Argo CD sync, with dev → prod promotion by pull request
- Envoy Gateway, health checks, Horizontal Pod Autoscaler, PodDisruptionBudgets and network policies
- FastAPI, Redis and PostgreSQL services monitored with Prometheus and Grafana
Pipeline
GitHub Actions runs the tests, builds multi-architecture images, pushes them to GHCR and updates the deployment configuration in Git; Argo CD notices the change and syncs the cluster. Kustomize overlays separate dev and prod, and a release reaches prod only through a promotion pull request. The cluster never holds CI credentials: Argo CD pulls from Git.
Reliability
Envoy Gateway in front, health checks, a Horizontal Pod Autoscaler, PodDisruptionBudgets and network policies, with Prometheus and Grafana watching FastAPI, Redis and PostgreSQL services.