Docker Compose 是 Docker 官网的开源我的项目,负责实现对 Docker 容器集群的疾速编排。通过应用一个 docker-compose.yml
模板文件来定义一个或者多个容器,满足一个软件应用运行环境。
Docker Compose 有三大应用场景
- Dockerfile 文件构建容器,定制镜像
- docker-compose.yml 构建软件环境
- docker-compose 启动容器
装置
在 window 和 mac 中,只有装置 docker 就会捆绑装置 Docker Compose
Linux 用户应用以下命令进行装置
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
对二进制文件可执行权限
sudo chmod +x /usr/local/bin/docker-compose
查看是否装置胜利
$ docker-compose version
docker-compose version 1.29.1, build c34c88b2
docker-py version: 5.0.0
CPython version: 3.9.0
OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020
编写 docker-compose.yml
version: "3.9"
# 服务 在它上面能够定义利用须要的一些服务,每个服务都有本人的名字、应用的镜像、挂载的数据卷、所属的网络、依赖哪些其余服务等等。services:
#服务名称
webapp:
# docker 运行在名字,在 docker ps -a 看到的名字
container_name: mynginx
# 镜像 : 标签
image: nginx:syf
# 端口映射 主机端口:容器端口
ports:
- "80:80"
# 物理卷挂载 将本地门路挂载到容器内
volumes:
- D:/docker-compose/html:/usr/share/nginx/html
dns:
- 192.168.123.1
Compose 有多个版本反对 2.x、3.x, 上面提供版本对应 docker 版本
Compose file format | Docker Engine release |
---|---|
Compose specification | 19.03.0+ |
3.8 | 19.03.0 |
3.7 | 18.06.0+ |
3.6 | 18.02.0+ |
3.5 | 17.12.0+ |
3.4 | 17.09.0+ |
3.3 | 17.06.0+ |
3.2 | 17.04.0+ |
3.1 | 1.13.1+ |
3.0 | 1.13.0+ |
2.4 | 17.12.0+ |
2.3 | 17.06.0+ |
2.2 | 1.13.0+ |
2.1 | 1.12.0+ |
2.0 | 1.10.0+ |
docker-compose.yml 文件还能够增加很多配置,有趣味同学去看官网文档
docker-compose 命令
docker-compose [-f <arg>…] [–profile <name>…] [options] [–] [COMMAND] [ARGS…]
启动容器
docker-compose -f docker-compose.yml up -d
docker-compose 常常应用命令
- build 构建或者重构 service
- create 创立 service
- down 进行并且删除容器资源
- exec 在容器内执行命令 类型 docker exec 命令
- logs 查看容器日志,与 docker logs 相似
- restart 重启容器
- start 开启服务
- up 创立并且开始容器