Course Map
| # | Chapter | Purpose |
|---|---|---|
| 00 | Orientation | What you will build, the stack chosen, cost, repos, and how to use the course. |
| 01 | Workstation Setup | Install every CLI tool used in the course on Linux or macOS and authenticate the services. |
| 02 | Fundamentals (Local) | Learn Pods, Deployments, Services, ConfigMaps, probes, and autoscaling on a local kind cluster, and build the minimal Express app. |
| 03 | Cluster on DigitalOcean | Provision droplets and install Kubernetes with kubeadm and Cilium, twice, for staging and prod. |
| 04 | Edge: Ingress and TLS | Install Traefik and cert-manager, point a real domain at the cluster, get real HTTPS. |
| 05 | Image Pipeline | Build images with Kaniko in GitHub Actions and publish to the DigitalOcean Container Registry. |
| 06 | CI Gates and PR Status Checks | Lint, tests, manifest validation, and Trivy scans gating every pull request. |
| 07 | Manifests with Kustomize | Lay out the app repo with base/ + overlays and deploy with kubectl apply -k from CI. |
| 08 | Sealed Secrets | Commit encrypted secrets to git, decrypt in cluster. |
| 09 | Observability | Prometheus + VictoriaMetrics + Grafana + Alertmanager, with Express RED dashboards. |
| 10 | Hardening | RBAC, Cilium NetworkPolicies, Pod Security Standards, Trivy enforcement. |
| 11 | Cluster Health and Backups | Control-plane/node monitoring, scheduled etcd snapshots, and a full restore drill. |
| 12 | Production Polish | Requests/limits, PodDisruptionBudgets, graceful SIGTERM, rollback drill. |
| 13 | GitOps with ArgoCD | Migrate from push deploys to pull-based GitOps and compare both models. |
| 14 | Ship the Course Site | Deploy this Docusaurus site to Appliku with a custom domain and auto-deploys. |
Each chapter's index.md contains step-by-step instructions, expected output, and a verifiable completion signal. Read chapters in order: each one assumes the completion signal of the previous one, and the manifest base/overlays grow chapter by chapter as the matching controllers are installed.