podman-machine and indirectly
boot2podman, it is easy to get started with podman even if your local host does not support it…
It will start a virtual machine, with everything to run containers. This includes
buildah, and remote access over
The command-line tool
podman-machine is a simple way to create virtual machines running
It will create a “machine” with Linux prepared for running Linux containers, with Podman and Buildah (and their dependencies) pre-installed.
This way any client will be able to run containers, even though not possible on their operating system. Whether their Linux distribution is too old or too unprivileged, or if they are running Windows or OS X operating systems without native Linux support.
Machine lets you create servers with Podman, then configures the Podman clients.
$ podman-machine create box $ podman-machine ssh box tc@box:~$ sudo podman
Will automatically download the latest version of the ISO, if not available in the cache.
Boot2podman is a lightweight Linux distribution made specifically to run Linux containers.
The distribution runs entirely from RAM, while persisting the containers and ssh keys.
It is possible to use the
pypodman command-line tool, to control podman remotely:
$ eval $(podman-machine env box) $ pypodman version
Or alternatively to use the
varlink-go command-line tool, to access the podman API:
$ eval $(podman-machine env box --varlink) $ varlink-go call io.podman.GetVersion
Both methods use SSH, in order to access the podman varlink socket of the VM.
The SSH keys and other configuration is automatically created with the machine.
boot2podman.iso is based on Tiny Core Linux:
This is a minimal system, that runs entirely from RAM and uses
The package manager uses TCZ packages, handled by the
There is also an alternative version, based on Fedora Linux:
This is a full system, that boots a regular image and uses
The package manager uses RPM packages, handled by the
Both versions will do the same thing, in that they will both offer the Podman varlink socket.
The Podman Machine can set up virtual machines for either, by using the “url” parameters.
For more posts about boot2podman, see: https://boot2podman.github.io/