Apple Container
The Apple Container backend uses Apple's container CLI to run Linux containers as lightweight VMs on Mac. OCI-compatible images (e.g. Ubuntu 24.04) run in a Linux guest. It supports shell, Python, and Node.js (all inside the Linux guest). macOS 26 is recommended for full support.
Requirements
- macOS with Apple silicon
- container CLI installed and on PATH (typically
/usr/local/bin/containerafter install)
Installation
-
Install the container CLI
Download the signed installer from Apple's container releases, or build from source.
-
Start the system service
container system start -
Verify
Ensure
containeris on your PATH. To list running containers usecontainer listorcontainer list --all(notcontainer ls). -
Build and sign heyvm (macOS)
For the Apple Container backend to work, the heyvm binary must be signed with the hypervisor entitlement. From the mvm-ctrl directory:
makeOr build and sign manually; see the mvm-ctrl README for
entitlements.xmland signing steps.
After this, heyvm can use the apple_container backend. Default image is Ubuntu 24.04 LTS (ubuntu:24.04). For more detail, see the mvm-ctrl README.
Note: There is also an
apple_virtbackend that uses the native Virtualization.framework directly (no container CLI required). It boots Alpine Linux VMs via EFI/GRUB, supports shell sandboxes, and is the default forheyvm wton macOS.