podman + docker compose and daemon on Linux

container Jun 10, 2025

I'm setting up my developer machine and this is a common situation I face working on some opensource projects. Podman itself already is a great replacement for all container needs I have but docker compose still is an important component. In this post, I want to go through the process to setup a Fedora machine using Podman with support for docker compose.

Requirements

Some new Linux distro. Even Debian Testing will have the necessary packages. Here, I'm using Fedora 42.

Install the necessary OS packages

Install podman and it's alias for docker:

# For CentOS Stream or Fedora
sudo dnf install podman podman-docker

# Test if it works
podman run -it --rm ubi9
docker run -it --rm alpine
podman image ls
docker image ls

# If that worked, that mean both podman and docker
# points to the same application

install podman

Enable the podman daemon

Depending how you setup your environment, by default the "docker daemon" will be used by the docker compose. Podman offers a daemon compatible with it out-of-the-box. Let's enable it:

If you don't do that, it is common to see the following error message:
Cannot connect to the Docker daemon at unix:///run/user/1000/podman/podman.sock. Is the docker daemon running?
# Enable and start the podman socket
# (do not run this as root)
systemctl --user enable podman.socket
systemctl --user start podman.socket

# Check if it worked
systemctl --user status podman.socket

enable a local-user podman socket

Download the latest compose

The docker compose is a plugin for the main CLI itself. Podman is able to consume and interface with it as well.

First, go to the release page and grab the latest version:

Then, download it to your machine:

# Remember to check the latest version. This probably is an older version
COMPOSE_VERSION=v2.37.0
DOCKER_CONFIG=${DOCKER_CONFIG:-${HOME}/.docker}
mkdir -p $DOCKER_CONFIG/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose

download docker compose

And that's it! You can test it now:

docker compose --help

check if docker compose is available

References

Tags

Luiz Costa

I am a senior software engineer at Red Hat / Ansible. I love automation tools, games, and coffee. I am also an active contributor to open-source projects.