Repolode
docker

docker/awesome-compose

A curated collection of ready-to-run Docker Compose samples that show how to wire together common services for local development.

Stars
46,660
Forks
8,347
Open issues
439
Last commit
13 days ago

What is it?

Awesome Compose is a curated collection of Docker Compose samples. Each sample is a self-contained folder with a compose.yaml file that defines an application and the services it depends on, such as a web framework, a reverse proxy, and a database.

The samples cover multi-service stacks like ASP.NET with MS SQL, Go with Nginx and PostgreSQL, React with Express and MongoDB, and Elasticsearch with Logstash and Kibana. They also include single-service setups for frameworks such as Django, Flask, FastAPI and Angular, and self-hosted tools like Nextcloud, Gitea, Pi-hole and Prometheus with Grafana. Some samples also run WebAssembly workloads with Docker+Wasm.

The samples are meant for local development and experimentation, not production deployment. Running any of them comes down to changing into its directory and running docker compose up -d.

Key features

  • 01Covers multi-service stacks pairing web frameworks with databases and reverse proxies.
  • 02Includes single-service setups for frameworks such as Django, Flask, and Angular.
  • 03Provides self-hosted tool configurations like Nextcloud, Gitea, and Pi-hole.
  • 04Each sample includes a compose.yaml that runs with docker compose up -d.
  • 05Some samples demonstrate WebAssembly workloads with Docker+Wasm.

Use cases

  • Learning how to connect an application container to a database and proxy in one Compose file.
  • Spinning up a local development stack for a framework like Django or React with a database.
  • Trying out self-hosted tools such as Nextcloud or Prometheus with Grafana on a personal machine.

Quick start

  1. 1

    Install Docker Desktop or Docker with Docker Compose

  2. 2

    Download some or all of the samples from this repository

  3. 3

    Go into a sample's root directory and start it in the background

    docker compose up -d
  4. 4

    Stop and remove the sample's containers when finished

    docker compose down

Things to know

  • Samples are for local development only and must not be deployed to production.

Topics

FAQ

What is awesome-compose?
A curated collection of ready-to-run Docker Compose samples that show how to wire together common services for local development. Awesome Compose is a curated collection of Docker Compose samples. Each sample is a self-contained folder with a compose.yaml file that defines an application and the services it depends on, such as a web framework, a reverse proxy, and a database.
Is awesome-compose free to use? What license does it have?
awesome-compose is open source under the CC0-1.0 license. Check the license terms before using it in commercial products.
Is awesome-compose still maintained?
Actively maintained. The last commit to awesome-compose was on Oct 26, 2026.
What can I use awesome-compose for?
Learning how to connect an application container to a database and proxy in one Compose file. Spinning up a local development stack for a framework like Django or React with a database. Trying out self-hosted tools such as Nextcloud or Prometheus with Grafana on a personal machine.
How do I install awesome-compose?
Install Docker Desktop or Docker with Docker Compose Download some or all of the samples from this repository Go into a sample's root directory and start it in the background: docker compose up -d Stop and remove the sample's containers when finished: docker compose down
Where can I get awesome-compose?
The source code and installation instructions are on GitHub: https://github.com/docker/awesome-compose

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects