awesome-compose README

The project's README from github.com/docker/awesome-compose. As one markdown file: README.md.

Awesome Compose Awesome

logo

A curated list of Docker Compose samples.

These samples provide a starting point for how to integrate different services using a Compose file and to manage their deployment with Docker Compose.

Note The following samples are intended for use in local development environments such as project setups, tinkering with software stacks, etc. These samples must not be deployed in production environments.

Contents

Samples of Docker Compose applications with multiple integrated services

Docker + wasm Icon indicates Sample is compatible with Docker+Wasm.

Single service samples

Basic setups for different platforms (not production ready - useful for personal use)

Getting started

These instructions will get you through the bootstrap phase of creating and deploying samples of containerized applications with Docker Compose.

Prerequisites

Running a sample

The root directory of each sample contains the compose.yaml which describes the configuration of service components. All samples can be run in a local environment by going into the root directory of each one and executing:

docker compose up -d

Check the README.md of each sample to get more details on the structure and what is the expected output. To stop and remove all containers of the sample application run:

docker compose down

Quickstart guides

In addition to all the ready to run Compose samples listed above the folder official-documentation-samples contains quickstart guides. Each of these step by step guides explain which files need to be created to build and run a Docker Compose application.

Contribute

We welcome examples that help people understand how to use Docker Compose for common applications. Check the Contribution Guide for more details.

awesome-compose (docker/awesome-compose)

Searching Database…

What is this?Awesome Compose is a curated list of Docker Compose samples: ready-made project setups showing how to integrate different services via a Compose file and manage their deployment with Docker Compose.
So it is a list, not a tool - what does one sample actually contain?Each sample is a small project folder whose compose.yaml describes the service components, so you browse the list and reuse the setup that fits your stack instead of installing anything.
How do I run one of these samples?Pick a sample, go into its root folder and run it with Docker Compose from there; the sample's own README.md explains the structure and the expected output.
What has to be on my machine before a sample will start?Just Docker with Compose: Docker Desktop on Windows or macOS, and Docker plus Docker Compose installed separately on Linux.
Is it safe to take one of these setups to production?No. The README says the samples are for local development environments like project setups and tinkering, and must not be deployed in production.
What kind of stacks does the list cover?Three groups: multi-service apps (React, Spring, Go, Flask, Node.js or Rust backends with databases and Nginx proxies), single-service samples like Django, Minecraft server or Wireguard, and personal setups like Nextcloud, Pi-hole, Prometheus/Grafana and WordPress.
Are there WebAssembly samples?Yes. WasmEdge examples include a Wasm web app with a static HTML frontend whose Rust microservice runs on the WasmEdge runtime with MySQL, plus a Kafka-to-MySQL worker; an icon marks which samples are Docker+Wasm compatible.
I am new to Compose itself - is there something simpler than the samples?Yes, the official-documentation-samples folder has step-by-step quickstart guides that explain which files to create to build and run a Docker Compose application.
Creator
docker
Size
11.2 MB
Stars
46.5K
Updated
CommitJun 15
Age
6y
Commits · 90 Days