Nested Virtualization (intel only)

Running Docker and other types of virtualization within your Anka VMs.

Starting in Anka 2.5.0, Nested Virtualization has received a large refactor and expanded support. It is now enabled by default. However, note that Nested Virtualization has many instabilities and limitations that it’s best to consider running things like Docker or Android Studio Emulators on linux instead.

Please avoid suspending VMs while Docker or other nested virtualization apps are started. You will need to start the apps post-vm start.

System Requirements

  • Host macOS >= Catalina + Anka VM with Big Sur.

  • We’ve tested on i7 Mac Minis and cannot guarantee that it will work properly on different hardware.

Supported Technologies

Docker*

  • Not currently supported.
Please avoid suspending VMs while Docker or other nested virtualization apps are started. You will need to start the apps post-vm start.

Virtualbox

You must set a single vCPU for the virtualbox VM for it to run properly.

Android Emulators

We highly recommend PG is enabled when using Android Emulators
Android emulators are very slow inside of VMs. Expect long delays (like 1+ minutes waiting at a black screen) booting the emulator. Also, you will receive lots of “isn’t responding” warnings in the UI which may impact your tests. We recommend you avoid using Android Emulators on MacOS VMs.

There are however some steps that you need to perform to get Android emulators to run properly:

  1. When android studio goes to install the intel HAXM extension (you may need to manually install it with these instructions), you need to approve the exception in System Preference > Security & Privacy and then reboot (requires a GUI session).

  2. You need to ensure that the config.ini for your virtual device/emulator has:

    hw.cpu.ncore=5
    hw.gpu.enabled=yes
    hw.gpu.mode=swiftshader_indirect