1.5 KiB
Raw Permalink Blame History

Decision: VM vs LXC for Docker Swarm nodes

Date: 2026-01-10
Status: Approved
Author: Chester + FrankGPT

Context

We need to run Docker Swarm manager and worker nodes on Proxmox VE hosts. Two options exist:

  1. QEMU/KVM Virtual Machines (VMs)
  2. LXC Containers

Decision

Use VMs for all Docker Swarm nodes.

Rationale

Factor VM LXC
Docker support Officially supported Unsupported (requires hacks)
Stability High Medium (kernel updates can break)
Isolation Full kernel isolation Shared kernel
Resource overhead Higher (~1-2 GB RAM baseline) Lower (~256 MB baseline)
Maintenance Standard Ubuntu updates AppArmor/seccomp tuning required

Trade-off accepted: We accept the higher resource overhead of VMs in exchange for stability and official Docker support.

Specifications

Parameter Value
Base image Ubuntu 24.04 LTS (Noble) cloud-init
Disk 32 GB per VM
RAM 4 GB per VM
vCPU 2 per VM
Network bridge vmbr0 (bridged to LAN)
Storage pool local-lvm

Capacity planning (per physical host)

  • Physical NVMe: 512 GB
  • Available in local-lvm: ~357 GB
  • Initial allocation: 2 VMs × 32 GB = 64 GB
  • Remaining: ~293 GB (room for 4+ additional VMs)

References