finds.dev← search

// the find

docker/compose

★ 38,215 · Go · Apache-2.0 · updated Sep 2026

Define and run multi-container applications with Docker

Docker Compose is the official Go rewrite of the classic Python docker-compose tool, providing `docker compose up` to define and run multi-container apps from a `compose.yaml` file per the compose-spec. It's for anyone running local dev stacks or simple multi-service deployments on top of the Docker CLI, not a Kubernetes replacement.

Clean separation between the CLI layer (cmd/compose), the orchestration engine (pkg/compose), and the public API (pkg/api), with test files sitting next to nearly every source file. It's a first-party Docker project with real CI rigor — OpenSSF Scorecard, zizmor for GitHub Actions security linting, dependabot, and an AI-disclosure gate workflow for PRs. Reference docs (docs/reference/*.md and *.yaml) are generated straight from the command definitions, so they don't drift from actual flag behavior. Features like `watch`, `bridge` (compose-to-Kubernetes transformations), and OCI artifact publish show it's still actively extending scope, not just maintaining v2 parity.

It's a thin client over the Docker Engine API — nothing here works without a running dockerd or Docker Desktop, so it's not useful if you're on Podman or another runtime without their compose-compatibility shims. Swarm support is explicitly called out in the README as stuck on the legacy compose format and unmaintained by Docker Inc, so don't reach for this if you're actually running Swarm. Linux install is still manual: download a binary, rename it, and drop it in a cli-plugins directory yourself — no package manager path mentioned. The codebase is large and Go-specific internals (executor, reconcile, rebuild_scheduler) mean casual contributors will have a real ramp-up before touching core orchestration logic.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →