Proxmox VE is the layer everything else sits on: a Debian-based hypervisor managing LXC containers and KVM virtual machines with a web UI, clustering, and ZFS built in. It's open source and runs happily on anything from a NUC to a rack server. The enterprise features are all included; the support SLA is however long it takes you to fix it.

Why it's the right first layer

  • Isolation by default. Every service gets its own container with its own resources, network identity, and failure domain. One bad experiment can't take down everything else.
  • ZFS everywhere. Snapshots, checksumming, compression, and simple replication to a second node. Storage mistakes become non-events.
  • Low overhead. LXC containers share the host kernel — a dozen services run comfortably on a mini PC.
  • Clustering when you're ready. Start with one node, add more later. Live migration moves guests between machines for maintenance or power savings.

A layout that works

  • One CT or VM per role. Docker host, media stack, AI services, backups — each a separate guest with its own IP.
  • Dedicated storage. A fast NVMe mirror for guests, big slow disks for bulk data, all ZFS datasets with quotas.
  • Unprivileged containers. The security and uid-mapping friction is worth it.

Good habits

  • Send host notifications somewhere you actually read — you want failures in your inbox, not in a log.
  • Set CPU governor and power limits up front; idle draw is what you pay 24/7.
  • Document boot order, ZFS import, and autostart before you need them at 2 AM.
  • Keep one offline copy of anything important — hypervisor upgrades occasionally go sideways.