Virtualization
Difficulty: Intermediate
4 min read

Proxmox VE: Virtualization and Containers

Complete guide to installing and configuring Proxmox VE, an open-source virtualization solution for managing virtual machines (KVM) and containers (LXC).

Back to tutorials
What is Proxmox VE?
Proxmox Virtual Environment (VE) is an open-source server virtualization management platform based on Debian. It integrates two virtualization technologies: KVM (Kernel-based Virtual Machine) for full virtual machines and LXC (Linux Containers) for lightweight containers. Everything is manageable through a simple and powerful web interface.

Why use Proxmox?

  • All-in-one solution: Manages VMs, containers, storage and networking from a single interface.
  • Open-Source: No license cost, great flexibility and a strong community.
  • High Availability: Supports building clusters of multiple Proxmox servers for live VM migration and high availability.
  • Flexible storage: Supports local storage (LVM, ZFS) and network storage (NFS, iSCSI, Ceph).
  • Built-in backups: Simple and effective backup and restore tool for VMs and containers.

Prerequisites

  • A dedicated server: Proxmox installs directly on the hardware (type 1 hypervisor). Make sure your CPU supports virtualization (Intel VT-x or AMD-V).
  • At least 2 GB of RAM (8 GB+ recommended for comfortable use).
  • A USB stick for the installation.
  • Proxmox VE ISO image: Downloadable from the official site.

Installation

Proxmox is installed via an ISO image that contains a complete Debian-based installer.

  1. Create a bootable USB stick with the Proxmox ISO using a tool like Rufus or balenaEtcher.
  2. Boot your server from the USB stick.
  3. Follow the installer's instructions. The important steps are:
    • Partitioning: You can choose the target disk. Proxmox offers advanced options such as ZFS.
    • Network configuration: Set a static IP address, a netmask, a gateway and a DNS server. This IP will be the one for the management interface.
    • The root password: Choose a strong password.
  4. Once the installation is complete, remove the USB stick and reboot.

Your Proxmox server is now installed. You can access it through its web interface.

First access and configuration

Open a browser and go to the address: https://YOUR_IP:8006.

  • User: `root`
  • Password: The one you set during installation.
  • Realm: "Linux PAM standard authentication"

You will probably see a subscription warning. Proxmox is fully functional without a subscription. A subscription provides access to professional support and more stable package repositories.

Step 1: Update the repositories

To be able to update the system without a subscription, you need to enable the "no-subscription" repositories.

# Comment out the enterprise repository
sudo sed -i "s/^deb/#deb/" /etc/apt/sources.list.d/pve-enterprise.list

# Add the no-subscription repository
echo "deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription" | sudo tee /etc/apt/sources.list.d/pve-no-subscription.list

# Update
sudo apt update && sudo apt full-upgrade -y

Step 2: Download ISO images

To create VMs, you need installation ISO images (Debian, Ubuntu, Windows...).

  1. In the web interface, select your Proxmox node, then the storage (by default "local").
  2. Go to the "ISO Images" tab.
  3. You can either upload an ISO from your computer or download one directly from a URL.

Create a Virtual Machine (KVM)

  1. Click the blue "Create VM" button in the top right.
  2. General: Give your VM a name.
  3. OS: Select the ISO image you downloaded.
  4. System: Leave the default values to start with.
  5. Disks: Set the size of the virtual hard disk.
  6. CPU: Choose the number of cores.
  7. Memory: Allocate the amount of RAM.
  8. Network: The "VirtIO (paravirtualized)" model offers the best performance.
  9. Confirm: Confirm.

Your VM appears in the list on the left. Select it, then click "Start" and open the "Console" to install the OS just like on a physical machine.

Create a Container (LXC)

Containers are lighter than VMs. They share the kernel of the Proxmox host.

  1. First, download a container "template". In the web interface, go to your "local" storage -> "CT Templates" -> "Templates". Download a template (e.g. `debian-11-standard`).
  2. Click "Create CT".
  3. Follow the wizard, which is similar to the one for VMs, but you will choose the downloaded template instead of an ISO. Creation is almost instantaneous.
Networking and the "Bridge"
By default, Proxmox creates a "Linux Bridge" named `vmbr0` that is bridged onto your main physical network interface. This means your VMs and containers can get an IP address on your local network, like any other physical machine. This is the simplest and most common configuration.

Conclusion

Proxmox VE is an extraordinarily complete and robust virtualization solution. Its clear web interface and its built-in features (clustering, backups, firewall) make it an ideal choice for home labs ("homelabs") as well as for enterprise infrastructures. By mastering the creation of VMs and containers, you have the keys to optimize your hardware resources and deploy services in a flexible and isolated way.

Written by

Morgann Riu

Cybersecurity and Linux administration expert. I share my knowledge through free tutorials and training to help system administrators and developers secure their infrastructures.

Share this tutorial

Did you enjoy this article?

Comments

Checklist Sécurité Linux

30 points essentiels pour sécuriser un serveur Linux. Recevez aussi les nouveaux tutoriels par email.

Pas de spam. Désabonnement en 1 clic.