← All articles
Hbo max logo on a dark reflective surface

Proxmox VE vs Incus: Which Hypervisor Is Right for Your Homelab?

Virtualization 2026-02-15 · 9 min read proxmox incus lxd virtualization containers hypervisor homelab
By HomeLab Starter Editorial TeamHome lab enthusiasts covering hardware setup, networking, and self-hosted services for home and small office environments.

Choosing a hypervisor is one of the most consequential decisions you make when building a homelab. It determines how you create and manage VMs, how you handle containers, what storage options are available, and how painful (or painless) your day-to-day operations will be. For years, the homelab community defaulted to Proxmox VE or VMware ESXi. But VMware's licensing changes in 2024 pushed many people away, and a new contender has matured: Incus.

Photo by BoliviaInteligente on Unsplash

Proxmox logo

Incus is the community fork of LXD, created after Canonical moved LXD under a restrictive CLA in 2023. It is now maintained by the Linux Containers project and has rapidly evolved into a capable alternative. If you are building or rebuilding your homelab in 2026, these two platforms deserve serious consideration. This guide compares them head-to-head so you can make an informed choice.

Quick Comparison

Feature Proxmox VE Incus
Type Full hypervisor platform Container/VM manager
VM technology KVM/QEMU KVM/QEMU
Container technology LXC LXC (native)
Application containers Docker (in VMs/CTs) Docker (in VMs/CTs), OCI native
Web UI Built-in, full-featured Separate (incus-ui-canonical)
Clustering Yes, built-in Yes, built-in
Storage backends ZFS, Ceph, LVM, LVM-thin, dir, NFS, iSCSI ZFS, Ceph, Btrfs, LVM, dir, CephFS
Live migration Yes Yes
API REST API REST API
CLI qm, pct, pvesh incus (single unified CLI)
Base OS Debian (custom install ISO) Any Linux distro (runs on top)
License AGPL v3 (free), optional subscription Apache 2.0 (fully free)
Backup Built-in (vzdump) Built-in snapshots + export

Architecture: Different Philosophies

Proxmox VE is an all-in-one virtualization platform. You install it from its own ISO, and it replaces your operating system. It gives you a web UI, a firewall, backup scheduling, user management, storage management, and clustering -- all integrated into one cohesive product. It is a complete platform that happens to be open-source.

Incus takes the opposite approach. It is a daemon that runs on top of whatever Linux distribution you already have. You install Ubuntu, Debian, Fedora, or Arch, then add Incus as a package. It manages containers and VMs through a unified interface, but it does not replace your OS, manage your firewall, or provide a built-in backup scheduler. It is a building block, not a turnkey solution.

This difference matters more than you might expect:

Installation

Proxmox VE

Proxmox provides an installer ISO that wipes the target disk and installs a customized Debian system:

# Download the ISO from proxmox.com, write it to USB
dd if=proxmox-ve_8.3-1.iso of=/dev/sdX bs=1M status=progress

# Boot from USB, follow the installer
# After install, access web UI at https://<ip>:8006

Post-install, most people disable the enterprise repository and enable the no-subscription repository:

# Disable enterprise repo (requires paid subscription)
sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/pve-enterprise.list

# Add no-subscription repo
echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" \
  > /etc/apt/sources.list.d/pve-no-subscription.list

apt update && apt dist-upgrade -y

Incus

Incus runs on top of your existing Linux install. On Ubuntu or Debian:

# Add the Incus stable repository
sudo mkdir -p /etc/apt/keyrings/
curl -fsSL https://pkgs.zabbly.com/key.asc | sudo gpg --dearmor -o /etc/apt/keyrings/zabbly.gpg
cat <<EOF | sudo tee /etc/apt/sources.list.d/zabbly-incus-stable.list
deb [signed-by=/etc/apt/keyrings/zabbly.gpg] https://pkgs.zabbly.com/incus/stable $(. /etc/os-release && echo ${VERSION_CODENAME}) main
EOF

sudo apt update
sudo apt install incus

# Initialize Incus (interactive wizard)
sudo incus admin init

The incus admin init wizard asks about storage backends, networking, clustering, and default settings. For a simple single-node setup:

Would you like to use clustering? no
Storage backend: zfs
Storage pool name: default
Create a new ZFS pool? yes
Size of the loop device (in GiB): 50
Would you like to connect to a MAAS server? no
Default network: yes (creates incusbr0)
Would you like to configure LXD bridge? yes

Like what you're reading? Subscribe to HomeLab Starter — free weekly guides in your inbox.

Web UI

Proxmox's web UI is one of its strongest features. It is built-in, requires no extra setup, and covers nearly everything: creating VMs and containers, managing storage, configuring networking, viewing logs, managing backups, and monitoring resource usage. You can run your entire homelab from the browser without touching the command line.

Incus historically had no UI -- it was CLI-only. That changed with incus-ui-canonical, a web interface originally built for LXD and adapted for Incus:

sudo incus config set core.https_address :8443
# Access UI at https://<ip>:8443

The Incus UI is functional and improving, but it is noticeably less polished than Proxmox's interface. Creating instances, viewing resource usage, and managing storage pools all work, but features like backup scheduling and detailed network configuration still require the CLI. If you prefer doing everything through a browser, Proxmox has a significant advantage here.

Container Support

This is where Incus shines. Incus was built from the ground up for Linux system containers (LXC). Launching a container is fast and simple:

# Launch an Ubuntu 24.04 container
incus launch images:ubuntu/24.04 my-container

# Launch an Alpine container
incus launch images:alpine/3.20 my-alpine

# List running instances
incus list

# Shell into a container
incus exec my-container -- bash

Incus containers start in seconds, use minimal resources (typically 20-50 MB of RAM overhead), and share the host kernel. They are ideal for running services that do not need a full VM -- which is most homelab services.

Proxmox also supports LXC containers, but the experience is different. Proxmox uses its own container template format, and you manage containers through the web UI or pct command:

# Download a template
pveam download local ubuntu-24.04-standard_24.04-1_amd64.tar.zst

# Create a container
pct create 100 local:vztmpl/ubuntu-24.04-standard_24.04-1_amd64.tar.zst \
  --hostname my-container \
  --storage local-zfs \
  --rootfs 8 \
  --memory 1024 \
  --cores 2 \
  --net0 name=eth0,bridge=vmbr0,ip=dhcp

pct start 100

Both work well, but Incus containers feel more native and lightweight. The image catalog is larger (hundreds of distro images available via incus image list images:), and operations like snapshots, resource limits, and live migration are baked into the same unified tooling.

Virtual Machine Support

Both platforms use KVM/QEMU for VMs, and both produce solid results. The difference is mainly in management tooling.

Proxmox VM management is mature and feature-rich:

# Create a VM from the CLI (most people use the web UI)
qm create 200 --name my-vm --memory 4096 --cores 4 \
  --cdrom local:iso/ubuntu-24.04-live-server-amd64.iso \
  --scsi0 local-zfs:32 --net0 virtio,bridge=vmbr0

qm start 200

# Access console through web UI (noVNC or SPICE)

Incus VMs use the same incus command as containers:

# Launch a VM (note the --vm flag)
incus launch images:ubuntu/24.04 my-vm --vm

# Launch with specific resources
incus launch images:ubuntu/24.04 my-vm --vm -c limits.cpu=4 -c limits.memory=4GiB

# VMs and containers are managed identically
incus exec my-vm -- bash
incus snapshot create my-vm snap1
incus stop my-vm

The elegant part of Incus is that containers and VMs share the same CLI, the same API, and the same management model. You do not need to learn separate tools. The downside is that Incus VMs have fewer knobs to turn compared to Proxmox -- things like PCI passthrough, custom QEMU arguments, and advanced disk configurations are more verbose or require manual QEMU overrides.

For GPU passthrough specifically, Proxmox has better documentation and community support. If you plan to pass through a GPU for Plex transcoding or AI workloads, Proxmox makes this easier.

Storage Backends

Both platforms support ZFS as a first-class citizen, and for most homelabs, ZFS is the right choice regardless of which platform you pick.

Proxmox storage options:

Incus storage options:

Incus has native Btrfs support, which Proxmox lacks. Btrfs is a reasonable alternative to ZFS if you want copy-on-write features without the memory overhead of ZFS. For everything else, the storage capabilities are comparable.

# Incus: Create a ZFS storage pool
incus storage create fast-pool zfs source=/dev/sdb

# Incus: Create a Btrfs pool
incus storage create bulk-pool btrfs source=/dev/sdc

# Proxmox: Create a ZFS pool (via CLI)
zpool create -f tank mirror /dev/sdb /dev/sdc
pvesm add zfspool tank-pool --pool tank

Clustering

Both platforms support clustering multiple nodes, but the implementations differ.

Proxmox clustering uses Corosync for cluster communication and supports live migration of VMs and containers between nodes. Setting up a cluster requires a minimum of three nodes for quorum (or two nodes with an external quorum device). The web UI fully supports multi-node management from a single interface.

Incus clustering also supports multi-node setups with live migration. It uses its own clustering protocol and similarly requires an odd number of voting members. Incus clustering includes automatic workload placement -- you can let Incus decide which node should run a new instance based on available resources.

# Incus: Initialize a cluster
sudo incus admin init
# Answer "yes" to clustering, set a cluster name

# On additional nodes:
sudo incus admin init
# Join existing cluster, provide join token

For a homelab with two or three nodes, both platforms work well. Proxmox's web UI makes multi-node management more visual and accessible. Incus clustering is more API-first, which suits automation-heavy setups.

Community and Ecosystem

Proxmox has a massive homelab community. Subreddits like r/Proxmox have tens of thousands of members. YouTube tutorials are abundant. If you run into a problem, someone has probably solved it and written about it. The Proxmox forums are active, and the company behind it (Proxmox Server Solutions GmbH) has been around since 2008.

Incus is younger as a project (forked in late 2023) but inherits the LXD community's decade of experience. The LinuxContainers.org community is active, documentation is solid, and the project maintainer (Stephane Graber) is responsive and transparent. However, the community is smaller, and you will find fewer homelab-specific guides and videos compared to Proxmox.

When to Choose Proxmox

Pick Proxmox if:

When to Choose Incus

Pick Incus if:

Running Both: A Practical Middle Ground

Some homelabbers run Incus inside a Proxmox VM or alongside it. This is not as odd as it sounds -- Proxmox excels at managing the hardware layer (VMs, GPU passthrough, storage pools), while Incus excels at rapidly spinning up lightweight system containers. You can create a dedicated Incus VM in Proxmox with nested virtualization enabled:

# On Proxmox, enable nested virtualization for a VM
qm set 300 --cpu host

Then install Incus inside that VM to manage your container workloads. This gives you Proxmox's web UI and backup features at the hardware level, with Incus's fast container management for services.

The Bottom Line

For most homelabbers building their first or second lab, Proxmox is the safer choice. The web UI, community support, and integrated feature set lower the barrier to entry considerably. You will spend less time configuring infrastructure and more time running services.

For experienced Linux users who want tighter control, prefer containers over VMs, and are comfortable with CLI-driven workflows, Incus is a compelling and genuinely lightweight alternative. It does not try to be everything -- and that is precisely its strength.

Whichever you choose, both platforms are actively developed, fully open-source, and well-suited for homelab use. You will not regret either decision.

Get free weekly tips in your inbox. Subscribe to HomeLab Starter