docker-compose
# docker-compose 容器编排
# 编排部署的作用
- 实现复杂容器应用架构之间的互联
- 减少大量容器部署的成本
通过一个文件定义复杂的容器应用之间的关系 在一个文件中定义复杂的容器应用之间的关系,用一个命令即可执行
- YAML,类似于html,xml
- YAML格式文件
- docker-compose 使用yaml文件启动容器
- start & stop
- down & up
# python2-pip安装docker-compose
yum -y install epel-release
yum -y install python2-pip
pip install --upgrade pip
pip install docker-compose
1
2
3
4
2
3
4
# docker compose 定义方法
容器分三层:
- 工程project一个目录
- 服务service用于定义容器资源(镜像 网络 依赖 容器)
- 容器container用于运行服务 步骤:
- 创建一个目录
- 创建一个docker-compose.yml文件 定义服务
- 执行docker-compose up
# docker-compose编排案例
参见 鱼皮 - 2021 运维教程\002配套资料\运维-学生资料(新)\第6阶段-运维云计算\05_容器\day1\01_笔记\1_容器技术.pdf 容器编排部署章节 案例
WordPress示例
version: '3'
services:
mysql:
image: mysql:5.7
restart: always
volumes:
- "./data:/var/lib/mysql"
environment:
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
expose:
- 3306
wordpress:
image: wordpress:latest
restart: always
depends_on:
- mysql
links:
- mysql
ports:
- "8010:80"
environment:
WORDPRESS_DB_HOST: mysql:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
编辑 (opens new window)
上次更新: 2024/06/15, 15:12:25