Jump to content

Podman

From Wikitech

Podman is a daemonless container engine to run OCI containers. It is notably able to run containers in rootless mode. For a lot of simple use case, it is a drop-in replacement to Docker (alias docker=podman).

It does not support BuildKit as far as I know.

Debian Bullseye

As of Feb 8th 2023, the Debian packages for Debian Buster are outdated and have some breakage. Among others, having containers to reach each others via a DNS lookup does not work out of the box. One has to install golang-github-containernetworking-plugin-dnsname and dnsmasq-base. Then the need to add a symbolic link: ln -s /usr/lib/dnsname /usr/lib/cni/dnsname debian #985548 and debian #985549.

Random notes:

For docker-compose use the version 2 (v1 is end of life): sudo apt install -y docker-compose-plugin sudo sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose

Boot up a podman service which emulates the Docker daemon. The systemd unit can be run as a normal user and podman will then yields rootless containers: sudo systemctl --user start podman It listens on a socket at $XDG_RUNTIME_DIR/podman/podman.sock which upon receiving traffic will spawn podman system service. I had some issue with the socket vanishing due to a poor interaction with Podman and the systemd podman.socket. Apparently resolved by installing the latest version of Podman manually.

Or maybe I had to instruct the service to not deal with the socket by passing --time=0

Then set in your env: export DOCKER_HOST="unix://$XDG_RUNTIME_DIR/podman/podman.sock"

And you can use docker-compose

Install from source

Upstream has a list of installation methods one being building from sources.