A proper look at the hardware, software, and slightly questionable decisions that keep this lab ticking over.
It started, as these things tend to, with mild frustration at a cloud bill and the nagging feeling that running a few containers on someone else's hardware was a bit daft when you've got perfectly good kit sitting at home. One Proxmox node became two, two became four, and somewhere along the way it turned into a proper homelab with strong opinions about networking.
"The cloud is just someone else's computer — and I'd rather it be mine."
Everything here is self-hosted, self-maintained, and occasionally self-inflicted. pfSense handles routing virtualised inside Proxmox, Pi-hole takes care of DNS and DHCP across the network, and a GPS-disciplined Pi 3 keeps time honest as a Stratum 1 NTP server. It's the kind of setup that's genuinely useful and deeply unnecessary in equal measure — which is exactly how it should be.
Code lives in a self-hosted Gitea instance, written in Zed, and deployed via Ansible from a Pi 5 with an NVMe and a HyperPixel 4 touchscreen that makes the whole thing look far more professional than it has any right to. Services register themselves to this dashboard automatically via the WINT registry module — so if something shows as stale, it's probably mid-deployment rather than anything to worry about.
The NAS runs on a Compute Module 4 and keeps 20TB of data organised and accessible across the network. It's not glamorous, but it's reliable — which is more than can be said for most things.