Running Proxmox7 on a Raspberry Pi 4

To test several docker containers independently from each other, I tried to setup Proxmox7 (current latest/greatest version) on a Raspberry Pi 4. Why ? Because it’s the most power-savy variant compared with having another PC running 24/7. Actually, for the Pi I’ll be using pimox.

There are many tutorials available on the web. Many of course are related to proxmox6, some are handling the Raspberry Pi 3. Even when using the ones that explicitly describe the installation of Proxmox7 on a Pi4, I was not successful.

The most promising approach is the one described at https://www.schreiner.pro/?p=877

NFS boot and network bridge

I first tried using my NFS boot strategy, in order to use the disk space on the NAS and not be depending on the local SD card.

The network NFS boot seems to be in conflict with the later switch of eth0 from “directly connected to the network” to “bridged over vmbr0”, leading to loss of network connectivity, routes etc… and thus also loosing the NFS mount

Running with a SD card

So, back to the roots with the good old SD card (there really is a difference between cheap Intenso cards and Sandisk Extreme cards!). Using a Raspberry Pi OS bullseye, based on Debian 11.

There are some warnings during installation of proxmox (“can’t create link in /boot/pve”) that are due to /boot being formatted as vfat, which does not support symlinks. As far as I found out, this only affects the zfs modules)

Creating VMs

From different instructions I’ve found, it was stated not to use the default CDROM device that is proposed during VM setup, but rather to create afterwards a new one (SCSI)

No matter which instructions I followed, in the end

  • either the VM started, one CPU was permanently running at 100% and no VNC connection was possible (“no display initailised yet”)
  • or the VM started, but ended up with some kind of UEFI screen telling me no disk could be accessed

I finally found this website, where it was suggested to use a CD image from https://cdimage.debian.org/debian-cd/current/arm64/iso-cd/ . I’m stil unsure what the difference to using regular images that one puts on the SD cards

In the end, I could not create any usable VM

Creating LXC container

Daily-built images were downloaded from https://uk.lxd.images.canonical.com/images/ubuntu/jammy/arm64/default/20220311_08:40/ to /var/lib/vz/template/cache/

Then started, and worked out of the box !