- 安装
#安装
curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose#yum
yum install docker-compose
- 说明
#编写YAML文件
#https://docs.docker.com/compose/compose-file/
YAML文件格式及编写注意事项
是一种标记语言很直观的数据序列化格式 可读写高 类似XML 语法更简单
数据结构通过缩进来表示 连续的项目通过减号来表示 键值对用冒号分割 数组用中括号括起来 hash用花括号括起来
YAML文件格式注意事项
不支持制表符tab键缩进 需要使用空格缩进
通常开头缩进2个空格
字符后缩进1个空格 如冒号 都好 横杠
用#号注释
如果包含特殊字符用单引号引起来
布尔值(true false yes no on off)必须用引号括起来 这样分析器会将他们解释为字符串
字段 | 描述 |
build dockerfile context |
指定Dockerfile文件名 构建镜像上下文路径 |
image | 指定镜像 |
command | 执行命令 覆盖默认命令 |
container_name | 指定容器名称 由于容器名称是唯一的 如果指定自定义名称 则无法scale |
deploy | 指定部署和运行服务相关配置 只能用Swarm模式使用 |
environment | 添加环境变量 |
networks | 加入网络 引用顶级networks下条目 |
ports | 暴露端口 与-p相同 但端口不能低于60 |
volumes | 挂载宿主机路径或命令卷 如果是命名卷在顶级 volumes 定义卷名称 |
restart | 重启策略 默认no always |on-failure|unless-stoped |
hostname | 容器主机名 |
- 常用命令
字段 | 描述 |
build | 重新构建服务 |
ps | 列出容器 |
up | 创建和启动容器 |
exec | 在容器里执行命令 |
scale | 指定一个服务容器启动数量 |
top | 显示容器进程 |
logs | 查看容器输出 |
down | 删除容器 网络 数据卷和镜像 |
stop| start |restart | 停止 启动 重启服务 |
- 运行
#运行在后台 -d
docker-compose -f xxx.yml up -d