Proxmox on a Mini PC: A Realistic Setup Guide
Whether Proxmox makes sense on a single low-power mini PC, and how to set it up well if it does — install choices, the LXC-vs-VM call, storage layout, and the idle-watt cost of the hypervisor.
Proxmox VE is the default hypervisor for homelab people, and “should I run Proxmox on my N100?” is one of the most common questions I get. The honest answer is: sometimes yes, often no, and the reasoning matters more than the verdict. This guide walks through when a single mini PC actually benefits from Proxmox, and how to set it up properly when it does.
I run Proxmox on two of my boxes and bare-metal Debian on the rest. The split is deliberate, and the criteria below are exactly how I decide.
Should you run Proxmox on one mini PC at all?
Proxmox earns its keep when you need isolation, snapshots, or multiple operating systems. On a single low-power box, run it if:
- You want to snapshot before risky changes and roll back in seconds.
- You need a VM that isn’t Linux (a Windows box, a pfSense/OPNsense firewall, HAOS as a full VM).
- You’re learning virtualization, clustering, or HA and want a real environment.
- You want clean separation between, say, a public-facing reverse proxy and your private services.
Run bare-metal Debian + Docker instead if:
- You have one box, one admin (you), and a stack of Docker containers.
- RAM is tight. The hypervisor plus guest OS overhead costs you 200–400MB of RAM and a small slice of CPU you could spend on workloads.
- You value simplicity over the abstraction. A single-node “cluster” is a lot of moving parts for one machine.
On an N100 with 16GB, the overhead is real but survivable; on a thin client with 8–16GB it’s often not worth it. On an N305 with 32GB, Proxmox is comfortable and the right call if you want VMs. My N100 vs N305 comparison covers which chip gives you the headroom for this.
Install and first-boot choices
The Proxmox VE ISO installs cleanly on every N100/N305 mini PC I’ve tried and on the HP T630/T640. A few choices to get right at install time:
- Filesystem: On a single NVMe drive, plain ext4 or xfs is the low-overhead choice. ZFS is excellent but its ARC will happily eat several GB of RAM you don’t have to spare on a 16GB box. Pick ZFS only if you have 32GB+ and actually want ZFS snapshots/send.
- Disk layout: Let the installer use the whole NVMe for the OS + guests if it’s your only drive. If you added a 2.5” SATA SSD, keep the OS/guests on NVMe and add the SATA drive as a separate storage for backups and bulk data after install.
- Hostname & static IP: Set a static IP at install. A hypervisor that DHCP-roams is a bad time.
- Email: Point the postfix relay at something real or you’ll never see the “a disk is dying” mail.
After first boot, do the two universal cleanups: remove the enterprise repo nag by switching to the no-subscription repo, and run a full apt update && apt dist-upgrade before building anything.
The decision that defines a low-power Proxmox box: LXC vs VM
This is where mini-PC Proxmox lives or dies. Lean on LXC containers, not VMs.
- LXC containers share the host kernel. They boot in a second, idle at near-zero overhead, and a Debian LXC running a couple of services uses 60–150MB. On a 16GB box you can comfortably run 10–20 LXCs.
- VMs emulate full hardware and run their own kernel. Each idle Linux VM costs 0.5–1GB RAM and a measurable slice of CPU before it does any work. Four idle VMs can eat half an N100’s RAM.
My rule: LXC for everything Linux, VM only when you must — a non-Linux OS, a firewall appliance, a kernel module you don’t want touching the host, or strong security isolation for something internet-facing. A practical single-N100 layout:
| Guest | Type | Role | RAM |
|---|---|---|---|
| docker-host | LXC | Docker + your Compose stack | 4–8GB |
| dns | LXC | Pi-hole + Unbound | 256MB |
| vpn | LXC | WireGuard / Tailscale | 128MB |
| monitoring | LXC | Uptime Kuma + Glances | 512MB |
| opnsense | VM | Firewall (only if routing here) | 1–2GB |
Note the pattern: one LXC runs Docker and most services live as containers inside it. You get Proxmox’s snapshot/rollback on the whole Docker host without paying VM overhead per service. The team at DockerHomeLab ↗ has Compose stacks that drop straight into that docker-host LXC.
A common mistake is one VM per service. On low-power hardware that’s the fastest way to run out of RAM. Containers first, always.
Storage and backups
Keep it simple on a single box:
- local-lvm / local: default, fine for guest disks on the NVMe.
- A separate SATA SSD as a directory storage for
vzdumpbackups and ISO/template storage. Backing up to the same physical drive your guests live on protects you from nothing. - Proxmox Backup Server is excellent but it’s another machine or VM. On a one-box setup, scheduled
vzdumpto the SATA drive plus an occasional copy to a NAS or external disk is the pragmatic minimum. If a real NAS is in your future, TrueNASGuide ↗ covers building the storage target these backups should eventually land on.
Set a nightly vzdump of every guest, keep 3–7 days, and actually test a restore once. An untested backup is a guess.
The watt cost of the hypervisor
People assume Proxmox burns a lot of idle power. It doesn’t burn much, but it isn’t free either. On the same N100 box I measured:
- Bare-metal Debian + Docker, warm idle: ~8.6W
- Proxmox + one Docker LXC + DNS LXC, warm idle: ~9.4W
So roughly 0.5–1W and a few hundred MB of RAM for the hypervisor layer on a single node — about $1–1.5/year in electricity. That’s a non-issue. The real cost of Proxmox on small hardware is RAM and complexity, not watts. For how I measure these deltas, see measuring mini PC idle wattage, and for the dollar framing, the power consumption cost math.
Tuning Proxmox for a low-power node
A few changes that help on small hardware:
- Disable the HA stack (
pve-ha-lrm,pve-ha-crm) if you’re a single node. It does nothing useful solo and adds churn. - Enable C-states in BIOS — Proxmox doesn’t disable them, but some mini-PC BIOSes ship with them limited. Same tuning as any other OS on the box.
- Don’t over-provision vCPUs. Giving a 4-core N100 guests that total 12 vCPUs just adds scheduling overhead. Match vCPU counts to what guests actually need.
- Turn off the subscription nag via the community script or repo swap so the UI stops interrupting you.
Bottom line
- Proxmox on one mini PC is worth it for snapshots, non-Linux guests, and learning — not as a default for a plain Docker stack.
- If you do run it, LXC for everything, VMs only when you truly must. That single discipline is what makes Proxmox viable on an N100.
- The hypervisor costs you RAM and complexity, ~1W of power — budget the RAM, ignore the watts.
- One box, one admin, all-Docker? Bare-metal Debian is simpler and lighter. Save Proxmox for when isolation or snapshots actually earn their overhead.
For the broader “what should I even be running” question that comes before the hypervisor decision, SelfhostRealm’s beginner guide ↗ sequences a sane first stack, and the $200 N100 build shows the bare-metal alternative side by side.
Related
Quiet and Fanless Mini PC Homelab Builds
How to get a genuinely silent 24/7 homelab box: truly fanless options, near-silent fan tuning, the storage and PSU noise nobody warns you about, and an honest take on fanless thermal limits.
A Starter Self-Hosting Stack for a Mini PC
The first services to run on a new N100-class homelab box, in sensible order: reverse proxy, DNS, remote access, backups, then the fun stuff — with the RAM each one actually uses.
Storage Options for a Mini PC Homelab
NVMe, SATA SSD, USB drives, and network storage in a small homelab box — the real performance, power, and reliability tradeoffs, plus when an internal SSD stops being enough.