meet114/swift-dock
A native macOS container runtime and management tool.
Philosophy
- Mac-First: Designed for macOS, using native APIs where possible.
- Clean Architecture: Clear separation between daemon, CLI, and clients.
- Open Source: MIT Licensed and community driven.
Structure
apps/: Application entry points (CLI, Daemon, GUI clients).packages/: Core logic libraries.docs/: Project documentation.
Getting Started
Prerequisites
- macOS 14.0 or later (Apple Silicon recommended for native performance)
- Swift 5.9+
Running Swiftdock
Swiftdock consists of a Daemon (swiftdockd) and a CLI (swiftdock).
- Start the Daemon
Open a terminal, navigate to the package directory, and run the daemon service. ``bash cd swiftdock swift run swiftdockd ` The daemon listens on http://localhost:8080`. Keep this window open.
- Use the CLI
In a new terminal window, use the swiftdock command to interact with the daemon.
Pull an image: ``bash swift run swiftdock pull alpine:latest ``
Run a container: ``bash swift run swiftdock run alpine:latest -- echo "Hello from Swiftdock" ``
List running/exited containers: ``bash swift run swiftdock ps ``
View logs: ``bash swift run swiftdock logs <CONTAINER_ID> ``
Development
- Build:
swift build - Test:
swift test
Package Metadata
Repository: meet114/swift-dock
Default branch: main
README: README.md