什么是docker compose
compose是定义和运行由多个容器(multi container)组成的应用的工具。
compose中有两个概念server: 一个应用的容器。project: 由一组相关的应用容器组成的整个业务项目。
为什么需要docker compose
我们在开发一个project时,这个项目除了app service,一般还需要database,cache等其他的service,那么就会需要多个container(容器)来运行这些service。如果我们对每个service,都单独使用docker CLI,那是多么麻烦的一件事。
利用compose,我们可以只使用一个yaml文件来配置project里的所service,然后通过一条命令,就可以根据yaml里的配置,创建容器,来运行所有的service。

使用compose
三个步骤:
- 为app service编写Dockerfile。
- 在文件docker-compose.yml里定义所有的service,这样这些service可以在一个隔离的环境中,一起运行。
- 执行docker-compose up后,compose会启动运行整个Project。
一个docker-compose.yml的示例。
version: '2.0'
services:
  web:
    build: .
    ports:
    - "5000:5000"
    volumes:
    - .:/code
    - logvolume01:/var/log
    links:
    - redis
  redis:
    image: redis
volumes:
  logvolume01: {}常用命令
compose命令的对象,默认是project,也可以指定project中的service。
基本格式:
docker-compose [-f=<arg>...] [options] [COMMAND] [ARGS...]
