-
-
Notifications
You must be signed in to change notification settings - Fork 0
Home
A native macOS app for Apple's container — Linux
containers, container machines, images, networks and volumes — without dropping to a
terminal.
It isn't a wrapper around the CLI. The app links container's own Swift client libraries
and talks to its background services over XPC, so lists, lifecycle actions, pulls,
networks and volumes go through the same APIs the container command uses. The CLI is
shelled out to for four things only: system start, system stop, build, and opening a
shell in Terminal.app.
- Quick start — install, first container, first stack, in about five minutes.
- Examples — worked setups: WordPress, Gitea with a runner, a static site, a compose import.
- Fleet GitOps lab — the long one: a Fleet server, a Git server and CI that configures Fleet on every push, all on one Mac.
| Section | What you get |
|---|---|
| Stacks | Several containers stood up as one unit — a network, volumes and services, wired together. Templates, custom stacks, or an imported docker-compose.yml. |
| Containers | Create, start, stop, kill, delete. Logs, an integrated terminal, export a filesystem. |
| Machines | Persistent Linux VMs with your home directory shared in — a place to work, not a place to run apps. |
| Images | Pull with progress, build from a Dockerfile, save and load OCI archives, find and delete unused ones. |
| Networks | NAT or host-only, custom CIDR, grouped by the stack that made them. |
| Volumes | Named storage that outlives containers, with sizes, labels and grouping. |
| Settings | Update checks for both the app and container, service restart, local DNS setup. |
Every list groups related items — by stack, by label, by what uses an image — and group headers collapse and stay collapsed. There's a menu bar item for status and quick access to running machines and stack web UIs when no window is open.
- A Mac with Apple silicon.
- macOS 26 or later.
-
container1.2.0 or later installed. The app is built against 1.2.1; a couple of features (exporting a container's filesystem) need that version. If your installed version is older, the app says so and offers to update it.
You don't need to start container's services yourself — if they aren't running, the app
shows a gate screen with a Start button. The first start downloads a Linux kernel and
can take a few minutes.
Out of the box, containers reach each other by IP address, not by name. Nothing resolves container names until a DNS domain is configured, so a stack's services are wired together by substituting real addresses when each container is created — see how services find each other. It's handled for you, including after a restart when addresses change, but it explains a lot of the app's design if you're coming from docker-compose.
You can turn names on. Settings ▸ Local DNS configures
container's local domain, after which containers resolve each other by name — db or
db.test — as well as being reachable that way from your Mac. It needs your administrator
password once, so the app doesn't assume it and stacks keep working either way.
Getting started
Guides
- Stacks
- Stack definitions
- Importing docker-compose
- Machines
- Images and builds
- Networking and DNS
- Settings and updates
Help