What Proxmox VE is: KVM virtual machines, LXC containers and a web UI
Proxmox VE is an open source virtualization platform based on Debian. It runs KVM virtual machines and LXC containers and is managed from a web interface on port 8006, a CLI or a REST API.
Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?
Proxmox Virtual Environment (Proxmox VE, often just “PVE”) is a complete server operating system for running virtual machines and containers. You install it directly on a physical server (“bare metal”), and it turns that server into a hypervisor host, called a node. It is based on Debian GNU/Linux and its source code is released under the GNU AGPL, version 3.
Two kinds of guests
Proxmox VE calls everything that runs on a node a guest. There are two kinds:
- Virtual machines (VMs) use KVM and QEMU. Each VM emulates a full computer with its own kernel, so it can run Linux, Windows or other operating systems. VMs are managed with the
qmcommand. - Containers (CTs) use LXC. A container shares the host’s Linux kernel, so it only runs Linux, but it starts in seconds and uses very little overhead. Containers are managed with the
pctcommand.
Every guest has a numeric ID (the VMID), such as 100. IDs below 100 are reserved, and in a cluster each ID must be unique across all nodes. Configuration files live in /etc/pve/qemu-server/<VMID>.conf for VMs and /etc/pve/lxc/<CTID>.conf for containers.
Ways to manage it
- Web interface: after installation, open
https://<node-ip>:8006in a browser and log in asrootwith the Linux PAM realm. From here you can create guests, open consoles, manage storage, networking, backups, the firewall and the cluster. - Command line: tools such as
qm,pct,pvesm(storage),pvecm(cluster),vzdump(backup) andha-manager, each with a man page. - REST API: everything the web UI does goes through a JSON REST API.
pveshlets you call it from a shell on the node, for examplepvesh get /nodes.
A first look around from the node’s shell:
qm list # virtual machines on this node
pct list # containers on this node
pvesm status # storages and free space
pvesh get /nodes # nodes, through the API
Clusters without a master
You can run Proxmox VE on a single node or join several nodes into a cluster. There is no central management server: every node can manage the whole cluster. Configuration in /etc/pve is stored in the Proxmox Cluster File System (pmxcfs), a database-backed file system that Corosync replicates to all nodes in real time. A cluster enables live migration of VMs between nodes and optional high availability (HA), where guests are restarted on another node if one fails.
Storage and backup
Disk images can live on local storage (a directory, LVM, LVM-thin, ZFS) or on shared storage (NFS, CIFS, iSCSI, Ceph RBD and others). Shared storage is what makes fast live migration and HA practical, because every node can reach the same disks. Backups are built in through vzdump, and Proxmox also makes a separate product, Proxmox Backup Server, for deduplicated, incremental backups.
Subscriptions and updates
The software is free to use. A paid subscription gives access to the enterprise package repository and support. Without one, you switch to the public no-subscription repository to receive updates; see the entry on repositories and updates.
When to choose a VM or a container
- Choose a VM for non-Linux systems, for workloads that need their own kernel or kernel modules, for strong isolation, and when you need live migration.
- Choose a container for lightweight Linux services such as DNS, a reverse proxy or a small web app, where low overhead and fast start matter. Running containers cannot be live-migrated; they are moved with a short restart instead.
Official documentation
Did this work for you?
No votes yet. Be the first.
If it did not work, the report form below tells the editors what went wrong.
See also
- 0099 Proxmox VE repositories and updates: enterprise vs no-subscription A fresh Proxmox VE install uses the enterprise repository, which needs a subscription. Learn how to switch to the no-subscription repository and… Beginner · Step by step · Linux Article Installation & first steps · Packages & updates 15 Oct 2026
- 0100 Create a VM and a cloud-init template with qm Create KVM virtual machines from the command line with qm, then build a reusable cloud-init template from a cloud image and clone… Intermediate · Step by step · Linux Article Basics · VMs & containers 15 Oct 2026
- 0103 Proxmox VE networking: Linux bridges (vmbr0) and VLANs Guests reach the network through Linux bridges such as vmbr0, defined in /etc/network/interfaces. Learn the default setup, VLAN-aware bridges, VLAN tags for… Intermediate · Step by step · Linux Article Installation & first steps · Networking & firewalls 15 Oct 2026
- 0123 KVM vs QEMU vs libvirt: how Linux virtualization fits together KVM is the Linux kernel part that uses CPU virtualization extensions, QEMU is the program that emulates a full machine around it,… Beginner · Explains an idea · Linux Article Basics 15 Oct 2026
- 0124 virsh cheat sheet: everyday libvirt commands A quick reference for virsh: list, start, stop and inspect VMs, change CPUs and memory, manage networks, storage pools and snapshots, with… Intermediate · Cheat sheet · Linux Article Basics 15 Oct 2026
- 0125 Create a KVM virtual machine with virt-install Use virt-install to create libvirt/KVM guests: install from an ISO, run a text-only install over the serial console, or import a cloud… Intermediate · Step by step · Linux Article Basics 15 Oct 2026
Repos in the wild
- proxmox/pve-manager: Proxmox VE API and web UI proxmox/pve-manager Read-only GitHub mirror of pve-manager, which provides the Proxmox VE web interface, much of the REST API, core daemons and tools such as pvesh, vzdump and pvenode. GitHub
- proxmox/qemu-server: the Proxmox VE virtual machine manager proxmox/qemu-server Read-only GitHub mirror of qemu-server, the Proxmox VE package that manages QEMU/KVM virtual machines and provides the qm and qmrestore commands. GitHub
- libvirt: virtualization API and daemon (GitHub mirror) libvirt/libvirt libvirt is the toolkit that manages KVM/QEMU and other hypervisors through one API, plus the virsh client. The GitHub repository is a read-only mirror; development happens on GitLab. GitHub
History
Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.
- Dominik +3,665 chars