Skip to content
ENNO
ZFS, Proxmox, and the Art of Not Losing Data

ZFS, Proxmox, and the Art of Not Losing Data

An SMR drive in a ZFS stripe, 59 corrupted files that SMART never noticed, and why I rebuilt the pool and downloaded 30TB again instead of backing it up.

From Docker Compose to Infrastructure as Code with OpenTofu

From Docker Compose to Infrastructure as Code with OpenTofu

My homelab runs from two Git repos: OpenTofu for the VMs, DNS and tunnels, and a small deploy script for 15 Compose stacks. How each one works, and the two and a half months one of them was quietly wrong.

Building a Self-Hosted Identity Layer with Authentik

Building a Self-Hosted Identity Layer with Authentik

Forward auth, OIDC and LDAP from one Authentik install, the Traefik config that ties it together, and three things that bit me along the way.

Building an AI Agent Mesh in My Homelab

Building an AI Agent Mesh in My Homelab

Nine Claude Code workers as separate Linux users on one VM, talking A2A over localhost. How it's wired, the shared-login bug that looked like broken credentials, and why memory was the limit all along.

What Happens When You Give AI Agents Root Access to Your Homelab

What Happens When You Give AI Agents Root Access to Your Homelab

An AI agent with sudo on its own VM and SSH to the rest of my homelab. The 34 hooks that keep it in line, the mistakes they didn't catch, and why I took the coding work away from the workers in September.

Automating Media Management with the Arr Stack

Automating Media Management with the Arr Stack

How my Sonarr and Radarr setup is wired, what a quality sync tool did to it halfway through a 30TB re-download, and the two bugs that only showed up under load.

Why I Self-Host Everything

Why I Self-Host Everything

One Proxmox box, five VMs and 59 containers, deployed with a git push. What I run at home, why, and the backups I should have set up sooner.