Proxmox is an open-source enterprise server management and server virtualization platform that offers a user-friendly web interface to manage VMs and containers. If you've used VirtualBox, VMWare, or Hyper-V in the past, Proxmox offers a similar experience with a focus on open-source technologies.
Although Proxmox is not compatible or directly available for the Raspberry Pi, we can use the Pimox project to install and set up a port of Proxmox designed for Raspberry Pi and use it to build a Proxmox or hybrid cluster of Raspberry Pi boards and x86 hardware.
Things You Will Need
- A Raspberry Pi 3, 4, or 5
- Debian 64-bit or Raspberry Pi OS 64-bit Lite (Bullseye or later)
- A microSD card 32GB or larger. You may also enable boot Raspberry 4 or 5 using an external SSD for larger and faster storage
- Internet connection via Ethernet cable or Wi-Fi
- Power supply
Proxmox on Raspberry Pi may not offer the same level of stability and performance as it offers on traditional hardware. Consider this installation as an experiment and proof of concept. Do not use this for running critical servers in a production environment.
Install Proxmox on a Raspberry Pi
After installing the operating system using the Raspberry Pi Imager tool, open a Terminal window—or connect to Raspberry Pi remotely via SSH (use PuTTY for Windows)—and then run the following commands to download and install the latest packages and security updates.
sudo apt-get update
sudo apt-get upgrade -y
This will take some time to finish depending on your Raspberry Pi model and network speed. Once it has completed, run the following commands to switch to the root user, then download the Pimox script and execute it to install Pimox.
sudo -s
curl https://raw.githubusercontent.com/pimox/pimox7/master/RPiOS64-IA-Install.sh > RPiOS64-IA-Install.sh
Open the RPiOS64-IA-Install.sh script using the Nano text editor and modify the following lines to match your network settings. This step is optional and can be performed later during the installation.
# RPI_IP="192.168.1.100" # Replace with your desired IP address
# GATEWAY="192.168.1.1" # Replace with your gateway/router's IP address
After making these changes, press Ctrl + X followed by Y and Enter. This will save the changes to the file and exit the editor. Next, we will run the Pimox script. To do so, run the following commands.
chmod +x RPiOS64-IA-Install.sh
./RPiOS64-IA-Install.sh
Continue to follow the prompts to finish the installation. During the installation, you will need to set up the root password that you will require later to access the Proxmox web interface. Also, make sure to choose default values during the prompts. The installation will begin and will take a while to complete, so sit back and relax or sip a cup of coffee.
After the installation is finished, the Raspberry Pi will automatically reboot. Post-reboot, the Proxmox should be ready to use. If the Raspberry Pi does not reboot automatically, you can try rebooting it manually.
It is recommended to install Proxmox on a Raspberry Pi running the Debian or Raspberry Pi OS Lite version. If you use the Desktop version, it’ll leave fewer resources to run Proxmox efficiently. Also, make sure to use a dedicated SSD or microSD card for this. Do not install it on your existing Raspberry Pi desktop OS version as it will change the wallpaper and remove some network tools.
Access Proxmox Web Interface From a Web Browser
To access the Proxmox web interface running on Raspberry Pi, open the web browser on your PC or laptop and then go to https://IPAddressOfPi:8006.
You may see an SSL error or security certificate error on the web browser. You need to bypass this by clicking on Advanced > Proceed Anyway.
You will see the login screen where you need to enter the following details:
- Login: root
- Password: The one you set during the Proxmox installation
Once logged in, you can click OK on the message and then access the Proxmox management interface.
Create and Manage Virtual Machines and Containers
You can start by uploading the ISO images of the operating systems that you want to install and run on Proxmox. To do so, you can download the ISO to the appropriate location with the following commands:
cd /var/lib/vz/template/iso/
This will help you ensure that the OS files are immediately visible in the web interface for installation. To create a virtual machine within Proxmox on Raspberry Pi, follow these steps:
- Click Create VM in the top-right corner of the Proxmox interface.
- Under General, enter a name for your virtual machine.
- Click OS and choose Do not use any media.
- In the System tab, leave all the default values as they are.
- Under Disks, make sure you select SCSI for the hard disk. Adjust the disk size if required.
- Click CPU and fine-tune the processor and memory settings. Please note that the Raspberry Pi has limited resources that depend on the model you have.
- Under Network, you can keep the things as the default or create a network bridge, based on your needs.
- After configuring the VM settings, click Next or the Confirm tab and click Finish.
- Select the virtual machine in the left menu and click Hardware.
- Double-click on CD/DVD Drive and then select Use CD/DVD disc image file (iso).
- Click the Storage drop-down and select the default storage followed by the ISO image.
- Click OK.
- Click Summary and then click the Start button in the top-right corner of the Proxmox interface when the VM is selected, to boot the VM and begin installation.
- Post-install, you can boot the virtual machine and then use the desired OS.
If required, you can tweak the hardware settings, such as processor, memory, and storage, based on your requirements.
An Experimental Path to Virtualization
Proxmox on Raspberry Pi offers a promising solution for virtualization. However, it still is in the experimental phase and should not be used in a production environment. With future updates and enhancements, and as the Raspberry Pi ecosystem evolves, we can expect improvement in the compatibility and performance of Proxmox on this single-board computer.
Until then, consider the Proxmox installation on the Raspberry Pi as an experiment and be prepared to explore and troubleshoot potential issues along the way.