I spent a wet bank holiday moving most of my personal services off a rented VPS and back onto the rack in the garage, and I want to write down why before the nostalgia of a successful migration convinces me it was purely a triumph. It was mostly a good idea. It was not free.
The trigger was boring: a renewal email. The VPS had crept up in price over a couple of years, and when I added it to the other small monthly bills I was paying for things that mostly serve me and a handful of friends, the total was no longer trivial. Meanwhile the rack at home sat there with spare capacity, already powered, already cooled, already costing me electricity whether I used it or not. The marginal cost of running one more container at home was essentially nothing.
So back home came the Git server, a few static sites, the bookmarks thing, the RSS reader, and the wiki. The pattern was the same each time: a Docker Compose file, a volume for the data, and a reverse proxy out front. Caddy did most of the work, because automatic certificates remove the single most tedious part of self-hosting.
The honest list of what I gave up:
- Someone else's uptime. A VPS in a datacentre has redundant power, redundant network, and a team who get paged when it doesn't. My garage has me, one UPS, and a broadband connection that occasionally has opinions. My services are now exactly as reliable as my house.
- A static address that the world trusts. Residential IPs are dynamic, often behind CGNAT, and some of the internet treats them as second-class. I leaned on a tunnel for ingress so I wasn't fighting my ISP's NAT, which works well but does put a third party back in the path I was trying to simplify.
- Not thinking about backups. On the VPS I paid for snapshots and forgot about them. At home, backups are my problem entirely, so there's now a nightly job pushing encrypted copies off-site, because a fire or a failed disk in the garage shouldn't take my data with it. That off-site copy is, amusingly, back in the cloud.
What I gained is worth the bother. The bill dropped to roughly the cost of the off-site backup storage and the electricity. The data lives on hardware I can physically touch, which matters more to me than it probably should. And the latency from the sofa to my own services is now a couple of milliseconds, which is a silly thing to enjoy and I enjoy it anyway.
The thing I'd tell anyone considering the same move: the migration is the easy part. Compose files and a reverse proxy are an afternoon. The hard part is honestly pricing the reliability you're giving up and deciding you're fine with it. For a personal Git server and a feed reader, I am completely fine with it. For anything I'd lose sleep over if it vanished, the cloud is still earning its keep, and the off-site backup proves I haven't entirely lost my nerve.