Build in the VM, Think on the Mac GPU: Debian 13 on Apple container With a Local Gemma 4 A developer documented a workflow for running a Debian 13 Linux VM under Apple's container CLI on Apple silicon while offloading LLM inference to a local Gemma 4 model via Ollama on the Mac's Metal GPU. The setup splits work between the VM, which hosts the application, and macOS, which runs the model, with the VM reaching Ollama over the VM network at 192.168.64.1:8000. The writeup also flags that the official debian:13 image lacks /sbin/init and fails to boot silently under container machine create. This article walks through building a Debian 13 machine under Apple's container CLI on an Apple silicon Mac, and then wiring that machine to a local LLM running on the Mac's own GPU. The VM is where your app lives. The Mac is where the model thinks. A Linux VM under container gets virtual CPUs and virtual devices and no Metal access, so running a model inside it wastes the one piece of hardware that makes a Mac good at this. The split that works is the obvious one once you see it: customize your app in a real Debian box, run it with container machine run , and have it call Ollama on macOS over the VM network. Getting there has two halves, and the first one fails silently. container machine create debian:13 succeeds. The machine is created. It just never boots, and nothing on the command line tells you why. debian:13 image has no /sbin/init stopped forever. systemd-sysv 192.168.64.1 0.0.0.0 brew services restart silently undoes that gemma4:e2b answered at https://github.com/xbill9/apple-container-debian-tips https://github.com/xbill9/apple-container-debian-tips Everything below was run on 2026-09-13: | | Mac | VM | |---|---|---| | Hardware | Apple M3, 8 GB | 2 CPUs, 2 GB | | OS | macOS 27.0 26A428 | Debian GNU/Linux 13 trixie | | Kernel | Darwin | Linux 6.18.35 aarch64 | | Runtime | container 1.4.1 | systemd, running | | LLM | Ollama 0.33.3 on Metal | calls http://192.168.64.1:8000 | 8 GB is the constraint that shapes every choice here. One model, one 2 GB machine, and the image builder stopped when it is not building. container does not run on anything else. Steps 0 through 5 build the VM. Steps 6 through 9 add the model. The two halves are independent, and Step 7 tests the Mac on its own before a VM is involved , which is what makes a failure in Step 9 easy to place. This distinction caused the most confusion, so it goes first. container runs Linux in two ways: | | Container | Machine | |---|---|---| | What runs | one program from the image | a whole booted Linux system systemd | | Disk | throwaway | persistent | | Your Mac home folder | not mounted | mounted at /Users/