๐ฏ What You'll Learn
- Create an optimized k3d cluster on limited hardware
- Deploy PostgreSQL with Secrets and ConfigMaps
- Build a Flask API with Kubernetes service discovery
- Configure Nginx as a reverse proxy with runtime DNS
- Debug real-world k8s problems (DNS, storage, RBAC)
๐ Architecture
Full Mermaid diagram showing how Frontend โ Backend โ Database connect through Kubernetes Services, DNS, and ConfigMaps.
View diagram โ๐ฆ Manifests
Production-ready YAML: Namespace, Secrets, Deployments, Services, ConfigMaps โ all tested on k3d v1.31.
Browse manifests โ๐ Tutorials
Step-by-step guides with real debugging lessons learned the hard way. Each tutorial includes code + explanations.
Start learning โโก Deploy It
One command to deploy: kubectl apply -f manifests/. Full stack running in under 2 minutes on k3d.
Quick Start
# 1. Create k3d cluster k3d cluster create ai --servers 1 --agents 1 # 2. Deploy everything kubectl apply -f manifests/ # 3. Access the app kubectl port-forward -n app svc/frontend-svc 8080:80 curl http://localhost:8080
Architecture
Real Bugs, Real Lessons
๐ Issues we debugged live
- postgres:18-alpine changed volume layout โ switched to
:16 - Nginx crash on startup (static DNS) โ use
resolver+ variable - Worker nodes can't join (bind-address) โ
--bind-address=0.0.0.0 - Manual coredns breaks RBAC โ let k3s auto-manage it
- pip has no internet in k3d โ ConfigMap-based deployments
- PersistentVolumes need provisioner โ
emptyDirfor labs