大家好,我是阿萨。前几天学会了启动多个容器来达成自己的目标。今天学习docker compose。
Compose是Docker的服务编排工具。用来构建基于Docker的复杂应用。Compose通过YAML格式的配置文件来管理多个Docker容器。主要适用于组合多个容器进行开发的场景。
一、Docker Compose环境安装。
四步走策略:
1.下载docker compose
sudo curl -L “ https://github.com/docker/compose/releases/download/1.25.0/docker-compose-( u n a m e − s ) − (uname -s)-(uname−s)−(uname -m)” -o /usr/local/bin/docker-compose
2.添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
3.将文件copy到 /usr/bin/目录下
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
4.查看版本
docker-compose --version
搞定。
二、YAML文件格式简介
YAML(docker- compose.yml)类似XML。通过缩进表示具体数据结构,连续的项目通过-表示,键值对用:分割。数组用[]表示。hash用{}表示。
YAML格式文件注意事项:
1. 不能用Tab缩进,必须用空格。
2. 开头缩进2个空格。
3. 冒号,逗号,减号后缩进一个空格。
4. 注释用#。
5. 特殊字符用单引号括起来。
6. 布尔值用双引号括起来。
三、YAML配置的常用字段含义。
1. build 指定dockerfile的名字。
2. dockerfile 构建镜像上下文路径。
3. context dockerfile的路径或者指向git仓库的url地址。
4. image 制定镜像。
5. command 执行命令,覆盖默认命令。
6. container name 容器名称。
7. deploy 指定部署和运行服务想换配置。
8. environment 添加环境变量.
9. networks 加入网络。
10. ports 暴露容器端口。 端口不能低于60.
11. volumes 挂载宿主机路径或命令卷。
12. restart 重启策略。
13. hostname 容器主机名。
四、Docker Compose 常见命令
1. docker-compose up 创建和启动容器。
2. docker-compose ps 列出容器。
3. docker-compose build 重新构建服务。
4. docker-compose exec 在容器里执行命令。
5. docker-compose scale 指定一个服务容器的启动数量。
6. docker-compose top 显示容器进程。
7. docker-compose logs 查看容器输出。
8. docker-compose down 删除容器
9. docker-compose stop/start/restart 停止,启动,重启服务。
五、docker compose 文件结构示例。