cd ~/homelab && terraform plan
A homelab you manage like production
Owning some infrastructure is a very fast way to learn it. A homelab lets you break things properly, without a change request, without a blast radius, and without a bill that scales with your mistakes.
The stack, layer by layer
Each layer is its own episode. Everything lives in Terraform and Git, and nothing is configured by hand, so the whole thing can be destroyed and rebuilt from scratch.
- 01
Proxmox
The hypervisor. VMs and LXC containers on your own hardware, provisioned by Terraform rather than clicked together in a web UI.
- 02
Talos Linux
An immutable, API-driven OS built only to run Kubernetes. There is no SSH and no package manager, so there is very little that can drift.
- 03
Kubernetes
A real cluster, not minikube. Ingress, storage and certificates handled the way you would handle them in production.
- 04
GitOps
The repository is the source of truth. Merge to change the cluster; roll back by reverting.
- 05
Observability
Prometheus and Grafana, with alerts tuned to fire on things that matter instead of on every CPU spike.
Why bother, when the cloud exists?
Because managed services hide the part worth understanding. Managed Kubernetes hands you a working control plane and very little sense of what it does. Run it yourself and the first time a node stops joining the cluster you have to work out why.
It's also the cheapest lab you'll ever have. One second-hand mini PC covers most of this series, and idle hardware doesn't quietly bill you for a NAT gateway you forgot about.
git clone
Homelab-in-a-Box
The Terraform and GitOps configuration from this series, cleaned up and documented so you can clone it and get a working cluster instead of starting from a blank directory.