Skip to content
RXNovaPublic

About

Native macOS container manager with lasso CLI

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

CoreLasso

CoreLasso

A native macOS application for managing Apple containers, built with SwiftUI and Apple's Virtualization framework. CoreLasso provides a clean graphical interface for the Apple container CLI, with full Docker Compose support via the bundled lasso CLI.

macOS 15+ Swift 6 Swift Package Manager

Download

CoreLasso


Installation

Download and run the installer:

CoreLasso-0.1.1.pkg

The installer places:

  • CoreLasso.app → /Applications
  • lasso CLI → /usr/local/bin

Requires macOS 15.0 Sequoia or later on Apple Silicon.


Features

  • Container lifecycle management — Create, start, stop, kill, delete, and export containers from a unified dashboard
  • Image management — Pull from Docker Hub and OCI-compatible registries with live progress tracking
  • Volume and network management — Create, inspect, and remove volumes and virtual networks
  • Real-time dashboard — Live container state with running count, resource visibility, and quick actions
  • Material Design UI — Clean, native macOS interface with sidebar navigation and contextual detail panels
  • Docker Compose support — Run multi-container workloads from existing docker-compose.yml files via the lasso CLI
  • Dockerfile support — Build and run single containers directly from a Dockerfile via lasso build / lasso up
  • OCI-compatible — Interoperable with Docker Hub, GHCR, ECR, GCR, and any OCI registry

Requirements

Requirement Version
macOS 15.0 Sequoia or later
Apple Silicon Required (arm64)
Swift 6.0
Xcode 16.0 or later
Apple container CLI Required for real container operations

The container CLI must be installed separately. Run container system start once to bootstrap the Apple Virtualization kernel and system services.


lasso CLI

lasso is a companion CLI tool bundled with CoreLasso. It wraps the Apple container CLI with Docker Compose orchestration and Dockerfile shortcuts.

Commands

Command Description
lasso up Start services from docker-compose.yml in the current directory
lasso up -f <file> Start services from a specific compose file
lasso up -p <name> Use a custom project name (default: lasso)
lasso up -f Dockerfile Build and run a single container from a Dockerfile
lasso down Stop and remove all containers for the project
lasso down -p <name> Stop and remove a named project
lasso build -t <tag> [ctx] Build an OCI image from a Dockerfile
lasso ps List running containers
lasso help Show CLI usage

Docker Compose Support

lasso up reads standard compose files and translates each service into a native Apple container. Supported filenames (auto-detected in order): docker-compose.yml, docker-compose.yaml, compose.yml, compose.yaml.

Supported fields: image, build, ports, volumes, environment, networks, command, entrypoint, working_dir, cpus, mem_limit

Examples

# Start all services from docker-compose.yml
lasso up

# Start with a custom project name
lasso up -f myapp/docker-compose.yml -p myapp

# Build and run a single Dockerfile
lasso up -f Dockerfile

# Stop and remove the default project
lasso down

# Build an image
lasso build -t myapp:latest .

Docker Compatibility

CoreLasso uses the OCI image format, making it interoperable with the broader Docker ecosystem:

  • Standard Dockerfiles work without modification with lasso build / container build
  • Images are compatible with Docker Hub, GHCR, ECR, GCR, and any OCI registry
  • linux/arm64 images run natively on Apple Silicon with no emulation required

Building from Source

git clone https://github.com/RXNova/CoreLasso.git
cd CoreLasso
swift build -c release

Building the Installer

export APPLE_APP_PASSWORD="xxxx-xxxx-xxxx-xxxx"
./build-installer.sh

This builds, signs, notarizes, and publishes a .pkg installer to GitHub Releases.


Architecture

CoreLasso/
├── LassoCore          # Models, protocols, errors — no framework dependencies
│   ├── Models/        # ContainerInfo, LassoSpec, NetworkSpec, ResourceSpec
│   ├── Protocols/     # LassoContainerEngine, RegistryService
│   ├── Parsing/       # LassoSpecParser
│   └── Errors/        # LassoEngineError, RegistryError
│
├── LassoData          # Engine and registry implementations
│   ├── Engine/        # VZContainerEngine (Virtualization.framework)
│   ├── Mocks/         # MockContainerEngine (no entitlements required)
│   └── Registry/      # OCIRegistryClient
│
├── LassoUI            # SwiftUI views, view models, design tokens
│   ├── Views/         # DashboardView, ContainerDetailView, ContainersView, HelpView
│   ├── ViewModels/    # DashboardViewModel, ContainerDetailViewModel, CreateContainerViewModel
│   ├── Components/    # StatusBadge
│   ├── Styles/        # GlassButtonStyle
│   ├── DesignTokens/  # LassoTokens (Material Design color and spacing system)
│   └── Resources/     # Help.md
│
├── CoreLassoApp       # GUI executable entry point
└── LassoCLI           # lasso CLI entry point and commands

License

MIT

About

Native macOS container manager with lasso CLI

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages