GitHub - FeSens/container-gui: Native macOS GUI for Apple's container CLI

2 min read Original article ↗

A native macOS GUI for Apple's container CLI tool. Built with SwiftUI, designed for Apple Silicon.

Container GUI Screenshot

Features

  • Containers — List, inspect, start, stop, kill, delete. Live log streaming with auto-scroll.
  • Images — Browse, inspect (config, platform, history), pull new images with streaming progress, delete.
  • Volumes — List, inspect, create, delete.
  • Networks — List, inspect, view IPv4/IPv6 configuration.
  • Builder — View status, start/stop the buildkit instance.
  • System — Disk usage overview, start/stop container services.

All actions provide instant feedback — the UI updates immediately, not on the next poll cycle.

Requirements

Install

Homebrew (recommended)

brew tap FeSens/tap
brew install --cask container-gui

This installs Container GUI.app into /Applications.

Build from source

git clone https://github.com/FeSens/container-gui.git
cd container-gui
bash scripts/package-app.sh
# App is at .build/package/Container GUI.app
cp -r ".build/package/Container GUI.app" /Applications/

The app auto-detects the container CLI from /opt/homebrew/bin/container, /usr/local/bin/container, or your $PATH.

Architecture

  • SwiftUI with NavigationSplitView — 3-column layout for list/detail views, 2-column for singletons (Builder, System)
  • MVVM with @Observable macro
  • Swift 6 strict concurrency — all services are actor types, ViewModels are @MainActor
  • Zero dependencies — pure Swift + AppKit (for NSTextView log viewer)
  • CLI wrapper — executes container commands via Foundation.Process, parses JSON output

License

MIT