# [[Apple Containerization]]
*2025-06-12*
Apple [announced](https://developer.apple.com/videos/play/wwdc2025/346/) a containerization framework and tooling in WWDC25.

## Links
- [Github for the command line binary](https://github.com/apple/container), [Technical overview of the utility](https://github.com/apple/container/blob/main/docs/technical-overview.md#macos-15-limitations)
- [Github for the containerization package](https://github.com/apple/containerization)
## Notes
- The framework is currently not ready for Sequoa macOS 15.
### On the Host
- Instead of a single VM running all containers, like Docker, Podman or Lima, `container` runs each container in an independent light weight container.
- There is an launchd process called `container-apiserver` which acts like an intermediary between the CLI and the tooling. It also manages IPAM.
### Inside the VM
- There is a statically cross compiled Linux executable called `vminitd` which runs inside each VM to run the container.
- There is no libc/coreutils etc binaries in the VM. Instead `vminitd` is statically compiled with `musl` for all its needs
- `vminitd` is the initial process in the VM which handles running the container and providing an API for the host `container` process to interact with it.
- The container image contents is presented as an ext4 formatted block device to the container.
> [!info] Ext4 formatting?
> At some point in the video, the presenter talks about the Swift binary formatting a block device with the Ext4 filesystem. This is interesting because till now, I wasn't aware of any Ext4 support in macOS.
---
*Links*: [[Tech MOC|Tech]]