什么是 Docker Compose?
Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。通过一个 docker-compose.yml 文件,你可以配置应用程序的服务、网络、卷等,并使用一条命令启动整个应用。
基本 YAML 结构示例
version: '3.8'
services:
web:
image: nginx:latest
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
常用字段说明
- version:指定 Compose 文件格式版本。
- services:定义各个服务(容器)。
- image:指定使用的镜像。
- ports:端口映射,格式为
主机端口:容器端口。 - volumes:挂载数据卷或绑定宿主机目录。
- environment:设置环境变量。
- depends_on:定义服务启动依赖关系。
最佳实践建议
使用命名卷而非绑定挂载以提高可移植性;合理利用 .env 文件管理敏感配置;通过 docker-compose.override.yml 支持开发环境自定义。