# ## Install and test the container tool: See https://github.com/apple/container/releases Once installed, start the service and follow prompts. ```bash container system start ``` This'll install your kernel. After this start your first container. On first launch, this'll install another artifact for our guest init process: ```bash container run alpine uname ``` Container starts after this will be fast! ## Get the Containerization sources: ```bash $ git clone https://github.com/apple/containerization.git ``` > [!IMPORTANT] > There is a bug in the `vmnet` framework on macOS 26 that causes network creation to fail if the creating applications are located under your `Documents` or `Desktop` directories. To workaround this, clone the project elsewhere, such as `~/projects/containerization`, until this issue is resolved. ## Take a look at ctr-example Read through the sources: - ContainerManager: - manager.create() - container.create(), start(), wait(), stop() ## Fetch the kernel Run ```bash cp "$(ls -t ~/Library/Application\ Support/com.apple.container/kernels/vmlinux-* | head -1)" ./vmlinux ``` ## Build and run the example ```bash $ cd examples/ctr-example $ make ``` ## Modify the project - Change the command run by the container - Change the image