container

0.2.0

A tool for creating and running Linux containers using lightweight virtual machines on a Mac. It is written in Swift, and optimized for Apple silicon.
apple/container

What's New

0.2.0

2025-06-27T22:06:34Z

This release includes a wide range of improvements across the repository. Thanks to all contributors for your work to improve container!

Highlights:

  • Clean up spelling errors and temporary test logic after launch
  • Improve documentation content and build process
  • Github runners now build the project with swift 6.2 and Xcode 26 beta
  • Add ability to add multiple network interfaces in single container (on MacOS 26) (see here)
  • Add a new container system status command (see here)
  • Remove the container system restart command (see here)
  • Add support for publishing sockets from container to host

What's Changed

New Contributors

Full Changelog: 0.1.0...0.2.0

container

container is a tool that you can use to create and run Linux containers as lightweight virtual machines on your Mac. It's written in Swift, and optimized for Apple silicon.

The tool consumes and produces OCI-compliant container images, so you can pull and run images from any standard container registry. You can push images that you build to those registries as well, and run the images in any other OCI-compliant application.

container uses the Containerization Swift package for low level container, image, and process management.

introductory movie showing some basic commands

Get started

Requirements

You need an Apple silicon Mac to run container. To build it, see the BUILDING document.

container relies on the new features and enhancements present in the macOS 26 beta. You can run the tool on macOS 15, but the container maintainers typically will not address issues discovered on macOS 15 that cannot be reproduced on the macOS 26 beta.

There are significant networking limitations that impact the usability of container on macOS 15.

Install or upgrade

If you're upgrading, first uninstall your existing container while preserving your user data:

uninstall-container.sh -k

Download the latest signed installer package for container from the GitHub release page.

To install the tool, double click the package file and follow the instructions. Enter your administrator password when prompted, to give the installer permission to place the installed files under /usr/local.

Start the system service with:

container system start

Uninstall

Use the uninstall-container.sh script to remove container from your system. To remove your user data along with the tool, run:

uninstall-container.sh -d

To retain your user data so that it is available should you reinstall later, run:

uninstall-container.sh -k

Next steps

Contributing

Contributions to container are welcomed and encouraged. Please see our main contributing guide for more information.

Project Status

The container project is currently under active development. Its stability, both for consuming the project as a Swift package and the container tool, is only guaranteed within minor versions, such as between 0.1.1 and 0.1.2. Minor version number releases may include breaking changes until we achieve a 1.0.0 release.

Description

  • Swift Tools 6.0.0
View More Packages from this Author

Dependencies

Last updated: Wed Jul 30 2025 22:09:23 GMT-0900 (Hawaii-Aleutian Daylight Time)