Installing Proxmox VE on a Raspberry Pi
Introduction
Proxmox VE (Virtual Environment) is a powerful, open-source virtualization platform typically designed for x86_64 servers. Official Proxmox does not support ARM architectures like the Raspberry Pi.
PXVIRT is a community-maintained fork of Proxmox VE for ARM64 devices, enabling you to run LXC containers and lightweight VMs on Raspberry Pi 4 or 5. While it won’t match the performance of a full server, it’s perfect for small homelabs, testing, or learning virtualization concepts.
This guide walks you through flashing the OS, preparing the Pi, installing PXVIRT, and accessing the web interface, with tips for safe updates and storage.
Installing Proxmox on a Raspberry Pi isn’t officially supported. PXVIRT makes it possible by providing ARM-compatible Proxmox packages. Performance is limited compared to x86 hardware, but you can still run containers and lightweight VMs.
This guide assumes:
- Raspberry Pi 4 or 5 (4GB+ recommended)
- MicroSD card or SSD storage
- Wi-Fi or Ethernet network connection
Flash Raspberry Pi OS
- Download and install Raspberry Pi Imager: https://www.raspberrypi.com/software/
- Select Raspberry Pi OS (64-bit, Lite preferred). Lite is recommended if you don’t need a desktop environment.
- Choose your SD card or SSD as the target.
- Optionally enable SSH in Raspberry Pi Imager under “Advanced Options” for headless setup.
- Flash the OS and wait until complete.
Boot and Prepare Raspberry Pi
- Insert the SD card (or connect SSD via USB).
- Power on the Pi and SSH into it (default user:
pi, password:raspberry) or use console. - Connect to the internet (Ethernet or WiFi)
- Update the OS:
sudo apt update && sudo apt upgrade -y
sudo reboot- Ensure your Pi is 64-bit:
uname -mShould return aarch64
Set a Static IP or DHCP Reservation
Proxmox works best when the host IP does not change. You can achieve this in two ways.
Option A: DHCP Reservation (recommended)
- Log in to your router or firewall
- Create a DHCP reservation for the Raspberry Pi using its MAC address
- Assign a fixed IP address
This keeps networking simple and avoids manual config changes on the Pi.
Option B: Static IP on the Raspberry Pi
If your Raspberry Pi is using NetworkManager, you can configure a static IP address using the nmcli command-line tool. This method avoids manual file editing and works well for Proxmox hosts.
List active network connections:
nmcli connection showNote the name of the active Ethernet connection, usually something like Wired connection 1.
Configure the Static IP. Replace the values below to match your network.
sudo nmcli connection modify "Wired connection 1" \
ipv4.method manual \
ipv4.addresses your_IP/subnet \
ipv4.gateway your_gateway \
ipv4.dns your_dns
# Example:
# sudo nmcli connection modify "Wired connection 1" \
# ipv4.method manual \
# ipv4.addresses 192.168.1.50/24 \
# ipv4.gateway 192.168.1.1 \
# ipv4.dns 192.168.1.1Apply the Changes. Bring the connection down and back up:
sudo nmcli connection down "Wired connection 1"
sudo nmcli connection up "Wired connection 1"Verify the IP Address
ip aConfirm the Raspberry Pi now has the configured static IP.
Set Hostname
Set the hostname before installing Proxmox. Proxmox uses the hostname internally for certificates and cluster services.
- Set the hostname:
sudo hostnamectl set-hostname proxmox-pi- Edit the hosts file:
sudo nano /etc/hostsEnsure it contains:
127.0.0.1 localhost
127.0.1.1 proxmox-pi- Reboot: