The Raspberry Pi computers have not much CPU power and main memory but they could be the perfect platform for virtualization exercises at university classes.

Now I'm looking for working virtualization solutions.

The XEN project has implemented a solution to run XEN on ARM v7-A and ARM v8-A architectures.

  • The Raspberry Pi 1 cannot be used with XEN because it implements the ARMv6.
  • This thread suggests that the Raspberry Pi 2 also cannot be used with XEN. Other sources say it sould be possible.
  • The Raspberry Pi 3 has an ARM Cortex-A53 processor and according to the XEN project it is supported by XEN. Did anybody test XEN with the Raspberry Pi 3?

Another hypervisor solution that should work on the Raspberry Pi is the type-1-hypervisor Xvisor.

Some tutorials explain using the type-2-hypervisor KVM on the Raspberry Pi 2 but it is obviously not trivial to get KVM running.

Do any further solutions exist to implement virtualization with the Raspberry Pi 2 or 3?

Update 1

Some tutorials exist which explain the installation and usage of Linux Containers (LXC) with the Raspberry Pi. LXC is also a virtualization technique, but not a type-1- or type-2-hypervisor (see here and here). Up to now the best tutorial I found is this one, which is in german language.

  • I think it's still too early to know exactly. Just dropping my two cents here.
    – Aloha
    Commented Apr 17, 2016 at 13:49
  • You might find this interesting: resin.io/blog/…
    – SiKing
    Commented Sep 30, 2016 at 15:34

5 Answers 5


Depending on what performance is acceptable, plain QEMU without KVM may be a viable solution. Assuming you need to run x86 system installed in disk.img,

apt-get install qemu-system-x86
qemu-system-i386 -hda disk.img

This is enough to run old stuff (DOS, Windows 95 and their equivalents from the nineteens in other architectures).

Another virtualization solution is Exagear which can run demanding stuff like Skype, but it's commercial software and limited to Linux targets and x86.


Just adding an answer for people like me: I was looking to run a couple of services on my raspberry pi.

The only two working solutions I found are:

  1. Running the HypriosOS which is a Raspbian with Docker included. link
  2. For full VM capabilities, I tried and tried running LXC and LXD linux containers on Raspbian, Ubuntu Mate and what not, but all tutorials included compiling kernels with non-existent switches. I found a seamless experience with Arch. Install Arch linux on the PI and then run pacman -S lxc

It appears that VMware are working on a bare-metal hypervisor (ESXi) for 64-bit Arm processors, as they have showed off on their VMworld US shindig in Las Vegas (August 2018).

It seems that soon we will be able to cluster multiple Raspberry Pi 3 model B+ (arm64), into a normal working virtualization solutions as wee see today with x86.



You can try Minos, v0.2.1 has support Raspberry Pi 3.



I've been meaning to test this out, but haven't done it myself. I saw this guy's article explaining how to install OpenStack on Rpi. (http://openstack.prov12n.com/openstack-on-raspberry-pi-part-1-why/)

  • 3
    Please add more detail to your answer, what happens if the link breaks in the future?
    – Darth Vader
    Commented Apr 17, 2016 at 9:32
  • 1
    The tutorial is incomplete. The author created three parts (1, 2 and 3). BTW: The tutorial uses Linux Containers (LXC) which is also a virtualization technique, but not a type-1- or type-2-hypervisor (see here).
    – Neverland
    Commented Apr 17, 2016 at 17:05
  • 1
    We're trying a new policy with regard to informationless link-only answers here. If this post is not edited to contain information that can stand as an answer, however minimal, in 48 hours it will be converted to Community Wiki to simplify having it corrected by the community.
    – Ghanima
    Commented Sep 30, 2016 at 16:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.