title: Docker三剑客之Compose(三)——Compose配置文件详解
date: 2015-12-05 15:20:17
tags: docker
categories: Docker 三剑客
Docker Compose
是一个编排多容器分布式部署的工具,提供命令集管理容器化应用的完整开发周期,包括服务构建,启动和停止。
这篇文章介绍Compose的配置文件,它是一个YAML文件。所有的顶层字符定义了一个服务,每一个服务可以有多个配置,其中至少有image
或build
指定其镜像来源。默认配置文件是./docker-compose.yml
。
和docker run
一样,在Dockerfile中指定过的配置项(比如:CMD
, EXPOSE
, VOLUME
, ENV
)无需在Compose
配置文件中再次指定。
接下来介绍Compose
服务的配置项,主要有:
- build
- cap_add & cap_drop
- command
- cgroup_parent
- container_name
- devices
- dns & dns_search
- dockerfile
- env_file
- environment
- expose
- extends
- external_links
- extra_hosts
- image
- links
- log_driver
- net
- ports
- volumes & volume_driver
- volumes_from
build
build
的值或者是一个包含了Dockerfile
文件的目录,或者是一个git库的URL。使用相对路径时,相对目录是Compose
配置文件所在的目录。这个目录也作为上下文context
被发送给docker daemon
。