Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。使用 Compose,您可以使用 YAML 文件来配置应用程序的服务。然后,使用一个命令,您可以从您的配置中创建并启动所有服务。
Docker Compose is included in Docker Desktop for Windows and macOS.
Compose 功能:
- 单个主机上的多个隔离环境
- 创建容器时保留卷数据
- 仅重新创建已更改的容器
- 变量和在环境之间移动组合
使用 Compose 基本步骤:
- 使用 Dockerfile 定义你的应用程序的环境,以便可以在任何地方复用它。
- 在 docker-compose.yml 中定义构成应用程序的服务, 以便它们可以在隔离环境中一起运行。
- 运行
docker compose up
,启动并运行整个应用程序。
Wordpress 例子
1
2
|
mkdir my-wordpress && cd my-wordpress
vim docker-compose.yaml
|
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
29
30
31
|
version: "3.9"
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- wordpress_data:/var/www/html
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
wordpress_data: {}
|
附录