Docker Compose
Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。通过一个 YAML 文件配置应用的服务,然后使用一个命令就可以创建并启动所有服务。
什么是 Docker Compose?
Docker Compose 允许你使用 YAML 文件来配置应用程序的服务。然后,使用 docker compose 命令,你可以从配置中创建并启动所有服务。
核心概念
- 服务 (Service) - 一个容器的定义
- 项目 (Project) - 一组关联的服务
- Compose 文件 - 定义服务的 YAML 配置文件
版本说明
重要
Docker Compose 有两个主要版本:
- Compose V2 - 单机开发环境,使用
docker-compose.yml或compose.yml - Compose V3 - 用于 Docker Swarm 生产环境,支持更多高级特性
本手册会明确区分这两个版本的使用场景。
快速开始
示例:WordPress + MySQL
创建一个 docker-compose.yml 文件:
yaml
version: '3.8'
services:
db:
image: mysql:8.0
volumes:
- db_data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data:启动服务:
sh
docker compose up -d访问 http://localhost:8000 即可看到 WordPress 安装页面。
学习路径
- Compose 简介 - 深入了解 Compose 概念
- 配置文件参考 - 完整的 YAML 配置说明
- 环境变量管理 - 管理应用配置
- 服务扩缩容 - 扩展和缩减服务
- 生产实践 - 生产环境最佳实践