Why Berth
I wanted the old Heroku feeling (push, and it's live) for the pile of small
apps I and my coding agents keep making, without a monthly bill per app or a
weekend lost to Kubernetes. A Mac mini turns out to be a great home for that.
It's quiet, it sips power, and an M4 with 16 GB comfortably runs twenty-odd
small apps and a couple of databases. Apple's
container runtime gives each app its
own lightweight Linux VM, and a Cloudflare tunnel puts it on the internet
without opening anything at home.
Berth is the glue. Each piece of it exists because something was annoying without it: zero-downtime deploys, nightly database dumps, a dev version an agent can push to and test on its own, sign-in so I stop writing OAuth code, and an encrypted backup somewhere that isn't the Mac.
What it isn't
It's one Mac. There's no failover, and if the power goes out while you're on holiday your apps are down until it comes back (and if FileVault is on, until someone types the password: see Reboots and FileVault). That's the right trade for side projects, internal tools, family apps and prototypes. It's the wrong one for anything where an hour of downtime costs real money.