This project only depends on:
podman-dnsname distro packages, those packages are not pulled by default and you need to install them. This allows containers to be able to resolve each other if they are on the same CNI network.
And it's formed as a single Python file script that you can drop into your PATH and run.
As in this article you can setup a
podman.socket and use unmodified
docker-compose that talks to that socket but in this case you lose the process-model (ex.
docker-compose build will send a possibly large context tarball to the daemon)
For production-like single-machine containerized environment consider
For the real thing (multi-node clusters) check any production OpenShift/Kubernetes distribution like OKD.
If you have legacy version of
podman (before 3.1.0) you might need to stick with legacy
The legacy branch 0.1.x uses mappings and workarounds to compensate for rootless limitations.
Modern podman versions (>=3.4) do not have those limitations, and thus you can use latest and stable 1.x branch.
If you are upgrading from
0.1.x then we no longer have global option
-t to set mapping type
hostnet. If you desire that behavior, pass it the standard way like
network_mode: host in the YAML.
Install the latest stable version from PyPI:
pip3 install podman-compose
--user to install inside regular user home without being root.
Or latest development version from GitHub:
pip3 install https://github.com/containers/podman-compose/archive/devel.tar.gz
or install from Fedora (starting from f31) repositories:
sudo dnf install podman-compose
We have included fully functional sample stacks inside
You can get more examples from awesome-compose.
A quick example would be
podman-compose up --help
A more rich example can be found in examples/awx3 which have
When testing the
AWX3 example, if you got errors, just wait for db migrations to end.
There is also AWX 17.1.0
tests/ directory we have many useless docker-compose stacks
that are meant to test as many cases as we can to make sure we are compatible
run a pytest with following command
python -m pytest pytests
If you are a user or a developer and want to contribute please check the CONTRIBUTING section