Proxmox VE: A Web Interface Over KVM and LXC
Proxmox VE is a Debian system with KVM, LXC, ZFS, a clustering layer, and a web interface, assembled so you do not have to assemble them. For a homelab or a small deployment it removes a great deal of setup.
What it actually is
Nothing underneath is proprietary or unusual. VMs are KVM and QEMU. Containers are LXC. Storage can be ZFS, LVM, Ceph, or plain directories. The base is Debian.
That matters practically: you can SSH in and use normal Linux tools. zpool status, journalctl, and ip a all work as expected. Proxmox is a management layer, not an appliance that hides the system.
What you get over rolling your own
One interface for VMs and containers. Create, start, snapshot, and console into both from the same place.
Backups that work. Scheduled backups of VMs and containers, with a restore that actually restores. This is the feature most homemade setups never quite finish.
Snapshots with rollback, including memory state on a running VM.
Storage abstraction. Define storage once and use it across guests.
Clustering, if you have three or more nodes, with live migration between them.
VM or container
The decision you make constantly.
LXC container for Linux workloads. Starts in about a second, uses very little memory beyond what the workload needs, and shares the host kernel.
VM for anything else: a different operating system, a workload needing kernel modules, Docker inside a guest, or anything untrusted.
Running Docker inside an LXC container is possible and awkward. If you want Docker on Proxmox, put it in a VM.
Practical notes
Get storage right at install. ZFS on the boot disk gives snapshots and integrity checking and wants memory. LVM-thin is lighter. Changing later means rebuilding, so decide now. Our ZFS explainer covers the tradeoffs.
Set the repository. A fresh install points at the enterprise repository, which returns errors without a subscription. Switch to the no-subscription repository or updates simply fail:
# /etc/apt/sources.list.d/pve-no-subscription.list
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
Use templates. Configure a guest once, convert it to a template, and clone it. Linked clones share the base disk and cost almost nothing.
Backups are not snapshots. Both live on the host. Losing the host loses both. Send backups elsewhere, whether to Proxmox Backup Server or through restic or Borg.
Passthrough
Proxmox exposes PCI passthrough in the interface, which is the usual route for giving a VM a GPU for transcoding or gaming. It still requires the host-side IOMMU configuration described in our GPU passthrough guide; the interface manages the assignment rather than the prerequisites.
Is it right for you
Yes if you want to run several VMs and containers on one machine and would rather manage them through an interface than assemble libvirt, storage, and backup tooling yourself.
Probably not if you want one or two VMs on a desktop you also use for other things. virt-manager is lighter and does not want the whole machine.
Frequently Asked Questions
What is Proxmox VE built on?
Debian, with KVM for virtual machines and LXC for containers, ZFS and Ceph for storage, and a web interface and clustering layer on top. Everything underneath is standard Linux, so the command line tools you already know still work.
Do I have to pay for Proxmox?
No. It is open source and fully functional without a subscription. Paying gets you the enterprise repository with more conservative updates and support. Without a subscription you use the no-subscription repository and dismiss a nag dialogue at login.
Should I use a VM or an LXC container in Proxmox?
A container for Linux workloads where the shared kernel is fine, since it starts faster and uses far less memory. A VM for a different operating system, a different kernel, anything needing kernel modules, or untrusted code.
Can I run Proxmox on one machine?
Yes, and most homelabs do. Clustering needs three nodes for a proper quorum, but a single node gives you the web interface, VMs, containers, snapshots, and backups without any of that.
Is Proxmox suitable for a machine that also does other things?
It is designed to be the whole system rather than a package you add. Installing it over an existing Debian works and is a supported path, but the intended model is a dedicated host that runs virtual machines and containers and nothing else.
What happens if I lose the Proxmox host?
Everything on it, unless you have backups elsewhere. Snapshots and local backups live on the same machine. Proxmox Backup Server or any offsite target is what protects against losing the host itself.