-
Notifications
You must be signed in to change notification settings - Fork 696
Description
Description
Currently Lima is using the Virtualization.framework (VZ) to create a VM from a regular cloud image...
But it is also possible to use the Containerization Swift library, to create a VM from a container image
This makes it more similar to the WSL2 driver for Windows, with kernel and init provided outside image*.
The easiest way to integrate from a Go program is to use the container
CLI, github.com/apple/container
The main feature is that the MicroVM boots up in a second (with the right image) - instead of in a minute.
The default kernel is currently from the Kata containers project, it could be made available for others too.
Current issues
-
Systemd is not yet supported (not compatible with
vminitd
), only OpenRC -
Some advanced features are missing from default kernel, such as IPv6 or VXLAN
-
Apple ARM CPU is required, it does not work on Intel CPU
-
Networking between instances does not work on macOS 15
* for WSL2, the kernel is shared between all system containers. in AC, each one get their own kernel.
Lima could use a custom image for AC, similar to the custom image that is currently used with WSL2.