J Logan 3b5c253059 Adds container network for macOS 26. (#243)
See discussion below for example. For multiple network interfaces in a
single container we'll want to integrate against a containerization that
includes apple/containerization#156.

The change bumps the containerization dependency to 0.2.0 and addresses
the breaking API changes.

```console
% container network
OVERVIEW: Manage container networks

USAGE: container network <subcommand>

OPTIONS:
  --version               Show the version.
  -h, --help              Show help information.

SUBCOMMANDS:
  create                  Create a new network
  delete, rm              Delete one or more networks
  list, ls                List networks
  inspect                 Display information about one or more networks

  See 'container help network <subcommand>' for detailed help.
```
2025-06-27 14:12:29 -07:00
2025-06-27 14:07:53 -04:00
2025-06-05 15:51:55 -07:00
2025-06-05 15:51:55 -07:00
2025-06-05 15:51:55 -07:00
2025-06-05 15:51:55 -07:00
2025-06-05 15:51:55 -07:00

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.

S
Description
No description provided
Readme Apache-2.0 14 MiB
Languages
Swift 98%
Shell 1%
Makefile 0.9%
C 0.1%