homelab

The machines everything runs on

running in production

01

A single well-kept host running the application stacks behind a reverse proxy, a storage server holding the backups, and the documentation to rebuild both. Not a rack of blinking lights — a small estate that has to work every day, with restores that have actually been tested.

The deploy sequenceBuild, smoke-boot the real image, tag the running image as the rollback, deploy, then verify. Any failed check rolls back automatically.buildon the hostsmoke-bootthe real imagetag rollback:previousdeployverify22s · 200 · 401:previous restoredany check failsa deploy is also refused outright when the code and the live database disagree on migrations

02

The parts worth mentioning

  • Nightly logical database dumps to network storage, with a restore verified end to end — counts, totals and encrypted fields all readable
  • One deploy path for every application: build, smoke-boot the real image, verify it stays up and answers, roll back automatically if not
  • Migrations are applied deliberately, and a deploy is refused when the code and the database disagree

03

Built with

StackDocker Compose · Traefik · Proxmox · TrueNAS · systemd
Sourcegithub