How Much Should Live Together? Learning to Isolate Services the Hard Way
How moving from VMs to Proxmox LXC containers taught me more about isolation, failover, high availability, and efficiency than any tutorial could. Also Published On trever.cloud Medium LinkedIn Most of us who get into self-hosting start the same way: start with linux, throw a few apps into Docker, get them running and connectable outside the home network, and call it good for months, maybe even…
Over time, the author discovered that living together services in their self-hosted setup brought valuable lessons in isolation, failover, high availability, and efficiency. The journey began with a single large VM containing various services running as Docker containers, which allowed for quick results but suffered from fragility when updates or nightly backups impacted multiple services simultaneously.
Next, the author opted for a handful of purpose-built VMs, which offered smaller blast radii and Proxmox HA for load distribution and failover. However, this still wasn't the optimal solution. The breaking point came when trying to share a GPU, leading to the adoption of one LXC container per service instead. This approach provided real cross-node failover, isolation, and GPU sharing, revolutionizing the author's homelab.
Moving to extremely lightweight LXC containers isolated per service and offloading application and metadata to NVMe storage proved to be a game-changer. Small containers, not small data, are the key to achieving efficient and resilient infrastructure. The author emphasizes that Proxmox Helper Scripts significantly simplify managing and deploying services in a homelab, making the one LXC container per service approach feasible.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.