docker/compose
The source of Docker Compose, the tool that defines and runs multi-container applications from a compose.yaml file. Useful for release notes, the issue tracker and the examples directory.
Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?
docker/compose
- Stars
- 38.4k
- Forks
- 5.9k
- Language
- Go
- Licence
- Apache-2.0
- Last push
- 15 Oct 2026
On GitHub: Define and run multi-container applications with Docker
Open on GitHubDocker Compose is the official tool for running several containers as one application: a web app, its database, a cache and a reverse proxy, all declared in one YAML file and started with a single command. The repository has about 38k stars and is maintained by Docker, Inc. under the Apache 2.0 licence. Version 2, the current line, is written in Go and runs as a plugin of the docker CLI, so the command is docker compose with a space.
What it does
Compose reads compose.yaml (or the older docker-compose.yml) and creates the networks, volumes and containers it describes, in dependency order. It names everything after the project directory, so several projects can run side by side without clashes. docker compose up starts, down removes, logs aggregates output, and watch rebuilds or syncs files when source code changes.
When to use it
- Local development environments that need a database or other services next to the app.
- Single-host deployments of small applications, where Kubernetes would be more than you need.
- Reproducible test setups in CI pipelines, started and torn down per run.
For multi-host clusters, self-healing and rolling updates, look at Kubernetes or Docker Swarm instead; Compose files can be a starting point for both.
How to install or try it
Compose is included in Docker Desktop on macOS and Windows. On Linux it is the docker-compose-plugin package from Docker’s repository, installed alongside Docker Engine:
Check before you run this
- Runs with administrator rights. Make sure you understand every line.
sudo apt install docker-compose-plugin
docker compose version
The repository’s docs folder links to the reference, and the awesome-compose project in the same GitHub organisation (docker/awesome-compose) has ready-made examples for common stacks.
Credit
Docker Compose is developed by Docker, Inc. and its contributors; it began as the independent project Fig by Orchard before Docker acquired it in 2014. Source and issue tracker: github.com/docker/compose. Documentation: docs.docker.com/compose.
Did this work for you?
No votes yet. Be the first.
If it did not work, the report form below tells the editors what went wrong.
See also
- 0056 Docker Compose: run a small web app with a database Docker Compose describes several containers, their ports, volumes and environment in one compose.yaml file, then starts them all with docker compose up. Intermediate · Step by step · Linux, macOS, Windows Article Docker basics · Docker Compose 15 Oct 2026
- 0250 Containerize a Node.js app and run it with PostgreSQL using Docker Compose Package a small Node.js web app in a multi-stage Docker image, then run it next to PostgreSQL with Docker Compose, named volumes,… Intermediate · Guided project · Linux, macOS, Windows Article Docker basics · Docker Compose · PostgreSQL 15 Oct 2026
- 0331 docker compose for an app with a PostgreSQL database A compose.yaml that runs your application next to a PostgreSQL container, with a named volume for the data, a health check so… Intermediate · Step by step · Linux, macOS, Windows Article Docker Compose · Install & connect 15 Oct 2026
History
Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.
- Dominik +1,976 chars