
I think many podman-MacOS developers will fit into what this doc section describes. Signed-off-by: Colin Walters <walters@verbum.org>
2.2 KiB
Building the Podman client on macOS
The following describes the process for building the Podman client on macOS.
Install brew
Podman requires brew -- a package manager for macOS. This will allow additional packages to be installed that are needed by Podman. See the brew project page for installation instructions.
Install build dependencies
Podman requires some software from brew to be able to build. This can be done using brew from a macOS terminal:
$ brew install go go-md2man
Obtain Podman source code
You can obtain the latest source code for Podman from its github repository.
$ git clone https://github.com/containers/podman go/src/github.com/containers/podman
Build client
After completing the preparatory steps of obtaining the Podman source code and installing its dependencies, the client can now be built.
$ cd go/src/github.com/containers/podman
$ make podman-remote
$ mv bin/darwin/podman bin/podman
The binary will be located in bin/
$ ls -l bin/
Using gvproxy from homebrew, with podman from git
Recent podman builds depend on a gvproxy
binary which comes from containers/gvisor-tap-vsock. A common development scenario may be using the podman desktop app as a baseline, with a development
binary of podman
you build from git. To ensure that the podman you build here can find the gvproxy installed from podman desktop, use:
make podman-remote HELPER_BINARIES_DIR=/opt/podman/bin
(Also note that because the Makefile
rules do not correctly invalidate the binary when this variable changes,
so if you already have a build you'll need to rm bin/darwin/podman
first if you have an existing build).
Alternatively, you can set helper_binaries_dir=
in ~/.config/containers/containers.conf
.
Building docs
If you would like to build the docs associated with Podman on macOS:
$ make podman-remote-darwin-docs
$ ls docs/build/remote/darwin
To install and view these manpages:
$ cp -a docs/build/remote/darwin/* /usr/share/man/man1
$ man podman
Using the client
To learn how to use the Podman client, refer to its tutorial.