podman-compose
brew install podman-compose
v1.6.0
GPL-2.0-only
Python implementation of Docker Compose specification for orchestrating Podman containers without a daemon.
Why you might care
Drop-in replacement for docker-compose if you use Podman instead of Docker; supports rootless containers and the full Compose Spec without requiring a running daemon. Single Python script with minimal dependencies (Podman, PyYAML, python-dotenv), making it lightweight and portable for declarative multi-container workflows.
4.7k
30-day installs · #626
16.8k
90-day · #603
42.4k
365-day · #750
6.1k
★ GitHub stars · updated today
Runtime dependencies
GitHub topics
docker-compose
linux-containers
podman
rootless-containers
Links
- https://github.com/containers/podman-compose
- GitHub: containers/podman-compose
- Brew formula source: Formula/p/podman-compose.rb
Blurb generated by claude-haiku-4-5 on today.
Raw metadata
{
"aliases": [],
"alternatives": [
"docker-compose",
"docker",
"kubernetes"
],
"build_dependencies": [],
"categories": [
"container-runtime",
"orchestration"
],
"caveats": null,
"conflicts_with": [],
"dependencies": [
"libyaml",
"podman",
"python@3.14"
],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Alternative to docker-compose using podman",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:40:59+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "podman-compose",
"github_default_branch": "main",
"github_last_commit_at": "2026-06-20T17:11:57Z",
"github_readme_excerpt": "# Podman Compose\n## [](https://github.com/containers/podman-compose/actions/workflows/test.yml)\n\nAn implementation of [Compose Spec](https://compose-spec.io/) with [Podman](https://podman.io/) backend.\nThis project focuses on:\n\n* rootless\n* daemon-less process model, we directly execute podman, no running daemon.\n\nThis project only depends on:\n\n* `podman`\n* [podman dnsname plugin](https://github.com/containers/dnsname): It is usually found in\n the `podman-plugins` or `podman-dnsname` distro packages, those packages are not pulled\n by default and you need to install them. This allows containers to be able to resolve\n each other if they are on the same CNI network. This is not necessary when podman is using\n netavark as a network backend.\n* Python 3.9 or newer\n* [PyYAML](https://pyyaml.org/)\n* [python-dotenv](https://pypi.org/project/python-dotenv/)\n\nAnd it\u0027s formed as a single Python file script that you can drop into your PATH and run.\n\n## References:\n\n* [spec.md](https://github.com/compose-spec/compose-spec/blob/master/spec.md)\n* [docker-compose compose-file-v3](https://docs.docker.com/compose/compose-file/compose-file-v3/)\n* [docker-compose compose-file-v2](https://docs.docker.com/compose/compose-file/compose-file-v2/)\n\n## Alternatives\n\nAs in [this article](https://fedoramagazine.org/use-docker-compose-with-podman-to-orchestrate-containers-on-fedora/) 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)\n\nFor production-like single-machine containerized environment consider\n\n- [k3s](https://k3s.io) | [k3s github](https://github.com/rancher/k3s)\n- [MiniKube](https://minikube.sigs.k8s.io/)\n\nFor the real thing (multi-node clusters) check any production\nOpenShift/Kubernetes distribution like [OKD](https://ww",
"github_repo": "containers/podman-compose",
"github_stars": 6119,
"github_topics": [
"docker-compose",
"linux-containers",
"podman",
"rootless-containers"
],
"homepage": "https://github.com/containers/podman-compose",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 4699,
"installs_365d": 42400,
"installs_90d": 16759,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "GPL-2.0-only",
"llm_generated_at": "2026-06-20T23:46:01+00:00",
"llm_model": "claude-haiku-4-5",
"name": "podman-compose",
"oldnames": [],
"one_liner": "Python implementation of Docker Compose specification for orchestrating Podman containers without a daemon.",
"optional_dependencies": [],
"rank_30d": 626,
"rank_365d": 750,
"rank_90d": 603,
"raw_hash": "ccef6a32afbd597c",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/p/podman-compose.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": null,
"version_stable": "1.6.0",
"versioned_formulae": [],
"why_use_this": "Drop-in replacement for docker-compose if you use Podman instead of Docker; supports rootless containers and the full Compose Spec without requiring a running daemon. Single Python script with minimal dependencies (Podman, PyYAML, python-dotenv), making it lightweight and portable for declarative multi-container workflows."
}