|
|
@@ -1,62 +1,86 @@
|
|
|
Docker Compose
|
|
|
==============
|
|
|
+[](https://ci-next.docker.com/public/job/compose/job/master/)
|
|
|
+
|
|
|

|
|
|
|
|
|
-Compose is a tool for defining and running multi-container Docker applications.
|
|
|
-With Compose, you use a Compose file to configure your application's services.
|
|
|
-Then, using a single command, you create and start all the services
|
|
|
-from your configuration. To learn more about all the features of Compose
|
|
|
-see [the list of features](https://github.com/docker/docker.github.io/blob/master/compose/index.md#features).
|
|
|
+Docker Compose is a tool for running multi-container applications on Docker
|
|
|
+defined using the [Compose file format](https://compose-spec.io).
|
|
|
+A Compose file is used to define how the one or more containers that make up
|
|
|
+your application are configured.
|
|
|
+Once you have a Compose file, you can create and start your application with a
|
|
|
+single command: `docker-compose up`.
|
|
|
|
|
|
-Compose is great for development, testing, and staging environments, as well as
|
|
|
-CI workflows. You can learn more about each case in
|
|
|
-[Common Use Cases](https://github.com/docker/docker.github.io/blob/master/compose/index.md#common-use-cases).
|
|
|
+Compose files can be used to deploy applications locally, or to the cloud on
|
|
|
+[Amazon ECS](https://aws.amazon.com/ecs) or
|
|
|
+[Microsoft ACI](https://azure.microsoft.com/services/container-instances/) using
|
|
|
+the Docker CLI. You can read more about how to do this:
|
|
|
+- [Compose for Amazon ECS](https://docs.docker.com/engine/context/ecs-integration/)
|
|
|
+- [Compose for Microsoft ACI](https://docs.docker.com/engine/context/aci-integration/)
|
|
|
|
|
|
-Using Compose is basically a three-step process.
|
|
|
+Where to get Docker Compose
|
|
|
+----------------------------
|
|
|
|
|
|
-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.
|
|
|
+### Windows and macOS
|
|
|
|
|
|
-A `docker-compose.yml` looks like this:
|
|
|
+Docker Compose is included in
|
|
|
+[Docker Desktop](https://www.docker.com/products/docker-desktop)
|
|
|
+for Windows and macOS.
|
|
|
|
|
|
- version: '2'
|
|
|
+### Linux
|
|
|
|
|
|
- services:
|
|
|
- web:
|
|
|
- build: .
|
|
|
- ports:
|
|
|
- - "5000:5000"
|
|
|
- volumes:
|
|
|
- - .:/code
|
|
|
- redis:
|
|
|
- image: redis
|
|
|
+You can download Docker Compose binaries from the
|
|
|
+[release page](https://github.com/docker/compose/releases) on this repository.
|
|
|
|
|
|
-For more information about the Compose file, see the
|
|
|
-[Compose file reference](https://github.com/docker/docker.github.io/blob/master/compose/compose-file/compose-versioning.md).
|
|
|
+### Using pip
|
|
|
|
|
|
-Compose has commands for managing the whole lifecycle of your application:
|
|
|
+If your platform is not supported, you can download Docker Compose using `pip`:
|
|
|
|
|
|
- * 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
|
|
|
+```console
|
|
|
+pip install docker-compose
|
|
|
+```
|
|
|
|
|
|
-Installation and documentation
|
|
|
-------------------------------
|
|
|
+> **Note:** Docker Compose requires Python 3.6 or later.
|
|
|
|
|
|
-- Full documentation is available on [Docker's website](https://docs.docker.com/compose/).
|
|
|
-- Code repository for Compose is on [GitHub](https://github.com/docker/compose).
|
|
|
-- If you find any problems please fill out an [issue](https://github.com/docker/compose/issues/new/choose). Thank you!
|
|
|
+Quick Start
|
|
|
+-----------
|
|
|
+
|
|
|
+Using Docker 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 Compose file looks like this:
|
|
|
+
|
|
|
+```yaml
|
|
|
+services:
|
|
|
+ web:
|
|
|
+ build: .
|
|
|
+ ports:
|
|
|
+ - "5000:5000"
|
|
|
+ volumes:
|
|
|
+ - .:/code
|
|
|
+ redis:
|
|
|
+ image: redis
|
|
|
+```
|
|
|
+
|
|
|
+You can find examples of Compose applications in our
|
|
|
+[Awesome Compose repository](https://github.com/docker/awesome-compose).
|
|
|
+
|
|
|
+For more information about the Compose format, see the
|
|
|
+[Compose file reference](https://docs.docker.com/compose/compose-file/).
|
|
|
|
|
|
Contributing
|
|
|
------------
|
|
|
|
|
|
-[](https://ci-next.docker.com/public/job/compose/job/master/)
|
|
|
+Want to help develop Docker Compose? Check out our
|
|
|
+[contributing documentation](https://github.com/docker/compose/blob/master/CONTRIBUTING.md).
|
|
|
|
|
|
-Want to help build Compose? Check out our [contributing documentation](https://github.com/docker/compose/blob/master/CONTRIBUTING.md).
|
|
|
+If you find an issue, please report it on the
|
|
|
+[issue tracker](https://github.com/docker/compose/issues/new/choose).
|
|
|
|
|
|
Releasing
|
|
|
---------
|