Hacker News new | ask | show | jobs
by somehnguy 930 days ago
Some software really prefers to control the whole host, usually highly integrated stuff. Some examples:

- Unifi Controller installs like a half dozen dependencies to run (Mongo, Redis, etc last time I used it), much easier to isolate all that in a VM

- Home Assistant's preferable and most blessed install method is Home Assistant OS, which is an entire distribution. I've run HA in Docker myself before but the experience is like 10x better if you just let it control the OS itself

- I have Plex,Sonarr,Radarr, etc running for media - there is software called Saltbox which integrates all of these things for you so that you don't need to configure 10 different things. Makes it a breeze, but requires a specific version of Ubuntu or you're in unsupported territory (kinda defeating the purpose)

Lots of stuff you can be totally fine just using Docker or installing directly onto the host. But having the bare metal system running Proxmox from that start gives you a ton of flexibility to handle other scenarios.

Worst case you just setup a single VM & run your stuff on it if you have no need for other types of installs. Nothing lost, but you gain flexibility in the future as well as easy backups via snapshotting, etc

2 comments

Easy backups via snapshotting is quick to say, but has an outsized benefit IME. My go-to approach for keeping many of my machines up to date is now scheduled apt get update; apt get upgrade and relying on scheduled backups in the unlikely event that goes awry. I don't have to worry about package interdependencies across machines.

For major upgrades, I may go a step further and do a manual snapshot before upgrading and then decide whether or not to commit (usually) or rollback (easy, when needed).

The (emotional) security provided by this is nice, as is the time-savings (after initial time expense to learn and setup the base proxmox infrastructure).

HomeAssistant also does some voodoo with Bluetooth, wifi, ipv6 and mDns for IOT devices. For this reason it seems best suited to a host machine instead of a docker container.
Something like HomeAssistant, it would be good if it had an agent to handle all the low-level networking stuff that could be run directly on the host, and then all the other stuff which doesn’t directly require that can run inside an unprivileged Docker container.