No Description

Aanand Prasad 16213dd493 Add experimental Compose/Swarm/multi-host networking guide 10 years ago
bin 620e29b63f Rename binary to docker-compose and config file to docker-compose.yml 11 years ago
compose c8751980f9 Merge pull request #1578 from aanand/fix-migrate-help 10 years ago
contrib be92b79b42 Support version command in Bash completion 10 years ago
docs 511fc4a05c Replace backtick code blocks with indentation 10 years ago
experimental 16213dd493 Add experimental Compose/Swarm/multi-host networking guide 10 years ago
script 4c2112dbfd Merge pull request #1539 from bfirsh/add-image-affinity-to-test 10 years ago
tests c8751980f9 Merge pull request #1578 from aanand/fix-migrate-help 10 years ago
.dockerignore c128e881c1 Add build and dist to dockerignore 10 years ago
.gitignore 620e29b63f Rename binary to docker-compose and config file to docker-compose.yml 11 years ago
CHANGES.md 5aa82a5519 Bump 1.4.0dev 10 years ago
CONTRIBUTING.md bc8d5923e7 Zsh completion for docker-compose 10 years ago
Dockerfile ae96e1af16 Use Docker 1.7.0 10 years ago
LICENSE 99064d17dd Docker, Inc. 11 years ago
MAINTAINERS 98f32a21e7 Remove @d11wtq as a maintainer 10 years ago
MANIFEST.in 0e30d0085b add bash completion to sdist 10 years ago
README.md cfcc12692f Update dockerproject.com links 10 years ago
ROADMAP.md ec2966222a Document Swarm integration 10 years ago
SWARM.md 1a14449fe6 Update Swarm doc 10 years ago
requirements-dev.txt c39a0b0a2d Update pep8, fix errors and freeze requirements-dev.txt 10 years ago
requirements.txt ac56ef3d65 Update docker-py to 1.2.3 final 10 years ago
setup.py ac56ef3d65 Update docker-py to 1.2.3 final 10 years ago
tox.ini 4e0f555c58 make flake8 a bit more specific 10 years ago

README.md

Docker Compose

(Previously known as Fig)

Compose is a tool for defining and running multi-container applications with Docker. With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.

Compose is great for development environments, staging servers, and CI. We don't recommend that you use it in production yet.

Using Compose is basically a three-step process.

  1. Define your app's environment with a Dockerfile so it can be reproduced anywhere.
  2. Define the services that make up your app in docker-compose.yml so they can be run together in an isolated environment:
  3. Lastly, run docker-compose up and Compose will start and run your entire app.

A docker-compose.yml looks like this:

web:
  build: .
  ports:
   - "5000:5000"
  volumes:
   - .:/code
  links:
   - redis
redis:
  image: redis

Compose has commands for managing the whole lifecycle of your application:

  • Start, stop and rebuild services
  • View the status of running services
  • Stream the log output of running services
  • Run a one-off command on a service

Installation and documentation

Contributing

Build Status

Want to help build Compose? Check out our contributing documentation.