← All Guides
beginner

Proxmox on a Mini PC: Complete Setup Walkthrough

Everything you need to run Proxmox on a budget mini PC -- hardware selection, BIOS prep, install, power management, and first VM. Built around the N100 machines that have become the homelab standard.

Budget Homelab ·
proxmoxhardwarehow-tobeginner

Mini PCs are the practical default for budget homelabs. They pull under 15 watts at idle, cost $150-200 complete, run quietly in a closet, and handle a full Proxmox stack without breaking a sweat. I’ve been running my homelab on a Beelink S12 Pro for over a year — it currently hosts 20+ services across a mix of VMs and containers and hasn’t hit a resource wall yet.

This guide covers everything specific to running Proxmox on mini PC hardware: which machine to buy, what to configure before installing, the install itself, and the few tuning steps that matter for always-on home server use. The detailed installation walkthrough is in the Proxmox install guide — this guide is the surrounding context that the install guide doesn’t cover.

This post contains affiliate links. If you buy through them, I earn a small commission at no extra cost to you.

Choosing a mini PC for Proxmox

The hardware decision comes down to four things: CPU, RAM, storage, and power draw.

CPU. Intel N100 is the current recommendation. It’s a 4-core Alder Lake-N chip built on an efficiency architecture — the same low-power design philosophy as the efficiency cores in 12th and 13th gen Intel laptops. For self-hosting workloads it’s plenty fast, draws 6-15W depending on load, and has clean Linux driver support. Its predecessor, the N95, is still a solid choice if you find a deal.

Avoid AMD mini PCs for a first Proxmox build. The Ryzen options are faster per core but have more unpredictable driver compatibility under Proxmox, and when something breaks, the community troubleshooting resources skew heavily toward Intel.

RAM. 16GB is the minimum. Do not buy 8GB expecting to be fine — you’ll hit the ceiling before you finish your first weekend of setup. Proxmox itself uses about 1GB. Each VM needs at least 1-2GB depending on what’s running inside it. Each LXC container can run useful services in 256-512MB. At 16GB you can run 1-2 VMs plus several containers simultaneously without juggling. At 32GB you have real room to grow into Kubernetes or Windows VMs.

Most N100 mini PCs ship with 16GB DDR4 SO-DIMM in a single slot. The upgrade path is simple: remove the bottom panel, swap the stick, confirm the new capacity shows in the BIOS.

Storage. A 500GB NVMe SSD is the minimum that’s actually comfortable. Proxmox itself takes about 20-30GB. Each VM image claims 20-100GB depending on its disk allocation. Containers are leaner, but they still accumulate. 500GB is fine to start; add a second M.2 SSD when you approach 70% capacity.

Power draw. N100 mini PCs pull about 8-12W under normal self-hosting load and can idle as low as 6W. At 12W and $0.15/kWh, that’s about $16/year in electricity. This is a core selling point over old rack servers, which run 50-200W and cost real money to operate 24/7.

Hardware that works

The Beelink S12 Pro (N100, 16GB RAM, 500GB NVMe, ~$170) is what I run. It’s the most consistently recommended N100 machine in homelab communities: clean Proxmox install with no driver surprises, accessible M.2 expansion slot under the bottom panel, and it’s been in stock and at a stable price for long enough that there’s plenty of community experience with it.

The MINISFORUM UN100L (~$160, 12GB RAM) is the main alternative. Same N100 chip, but it has dual LAN ports — that second ethernet interface lets you set it up as a router or segment a dedicated management network if you want to go deeper on networking. The trade-off is 12GB RAM vs 16GB on the Beelink at a similar price.

For a deeper side-by-side, see the Beelink vs MINISFORUM comparison. For the broader hardware picture including Raspberry Pi and used ThinkCentres, see the best mini PCs for a homelab roundup.

BIOS settings to check before installing

Boot into the BIOS — usually Delete or F2 immediately after powering on — and check three settings before touching the installer:

Disable Secure Boot. Proxmox’s bootloader isn’t signed. Secure Boot will block the installation. Find it under Security or Boot settings depending on your firmware.

Set USB as first boot device. You need the USB installer to load before the internal drive. Some machines auto-detect this; others don’t. Change it manually and you won’t have to guess.

Enable power-on after AC loss. This is the most important setting for a home server and the one most people miss. On the Beelink S12 Pro it’s under Power > AC Power Recovery > Power On. When this is enabled, the machine starts automatically after a power outage instead of staying off until you physically press the button.

A home server that doesn’t restart itself after a power blip is a machine you’ll be physically resetting at the worst possible times. Set this before you install anything.

Save and exit. You’re ready for the install.

Installing Proxmox VE

The Proxmox install guide covers the installation in detail. The short version:

  1. Download the Proxmox VE 8 ISO from proxmox.com/downloads
  2. Flash it to a USB drive with Balena Etcher
  3. Boot from USB and work through the graphical installer
  4. Assign a static IP — pick an address outside your router’s DHCP range (e.g., 192.168.1.10) and note it down. This is the permanent address for your Proxmox web UI
  5. Remove the USB drive when the installer finishes and let the machine reboot
  6. Access the web UI from another computer at https://<your-ip>:8006

One mini-PC-specific note: some N100 machines have a brief HDMI output blackout during early boot before the display kicks on. If your screen stays blank for 10-15 seconds after the USB boots, wait — the installer is loading, just not showing output yet.

After install, go through the Proxmox post-install checklist before creating any VMs. It covers repository configuration, the subscription nag removal, storage layout, and initial updates. Takes about 20 minutes and avoids three or four problems that catch people off guard later.

Mini-PC-specific post-install tuning

Most Proxmox guides target enterprise hardware. A few things are different on mini PCs:

CPU power management. The N100’s efficiency cores can oscillate between power states quickly under light load. For a home server running continuously, you want stable, predictable performance rather than aggressive frequency scaling. Install cpufrequtils and set the governor:

apt install cpufrequtils
echo 'GOVERNOR="powersave"' > /etc/default/cpufrequtils
systemctl enable cpufrequtils
systemctl start cpufrequtils

powersave on the N100 is not actually slow — it reduces unnecessary frequency jumps while still boosting when workloads need it. If you’re planning heavy workloads like 4K transcoding or active compilation inside VMs, use performance instead.

Verify headless operation before disconnecting the monitor. Before you put the machine in a closet, confirm that you can reach the Proxmox web UI and SSH into the node from another machine on your network. Proxmox doesn’t need a display after initial setup — the web UI handles VM console access, snapshots, reboots, and everything else. But you want to confirm connectivity before the only way to troubleshoot is plugging in a monitor.

Keep a keyboard and monitor accessible for the rare case where you need console access. It beats guessing when something breaks late at night.

Storage layout options. Proxmox’s default installer creates local (for ISOs and backups) and local-lvm (a thin LVM pool for VM disks). This works fine. If you want a simpler setup, check “Advanced options” during the disk step and choose ext4 — this creates a single storage target that’s easier to reason about. Either approach is fine; the post-install checklist covers reconfiguring storage after the fact if you want to change it.

Setting up your first workload

The standard layout for a mini PC homelab running Proxmox:

WorkloadTypeRAMCPUDisk
Docker host (Ubuntu 24.04)VM8GB2 cores100GB
Technitium DNSLXC256MB1 core4GB
Tailscale routerLXC256MB1 core4GB
Proxmox overhead~1GB
Remaining on 16GB machine~6.5GB

One Docker VM hosts all your Docker-based services — Jellyfin, Immich, Paperless-ngx, Vaultwarden, whatever you want to run. LXC containers handle lightweight services that don’t need Docker: DNS, VPN subnet routing, ad blocking.

The reasoning for this layout is in the Proxmox VM vs LXC guide. The short answer is that Docker inside a VM behaves predictably with full isolation; Docker inside a privileged LXC container technically works but weakens the security boundary.

To deploy the Docker VM: create it in the Proxmox web UI with the Ubuntu Server 24.04 ISO, work through the OS installer, SSH in, and follow the Docker Compose basics guide to install Docker Engine. From there, deploying any self-hosted service is a docker compose up -d away.

When you’ll outgrow a single mini PC

One N100 mini PC runs a full homelab stack. The constraints you’ll eventually hit:

Storage fills up first. Jellyfin media libraries, Immich photo collections, and Paperless-ngx document stores grow quickly. Add a second M.2 SSD when you’re at 70% of the internal drive.

RAM is the second ceiling. 16GB handles a normal self-hosting setup. Add 32GB if you start running multiple large VMs or something like k3s.

CPU is almost never the bottleneck for self-hosting workloads. The exception is 4K transcoding in Jellyfin without hardware acceleration. The N100 supports Intel Quick Sync — enabling it in the Jellyfin setup dramatically reduces CPU load for transcoding.


See the full homelab stack at /stack/.