Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。通过一个 YAML 配置文件(通常命名为 docker-compose.yml),你可以一键启动、停止和重建整个应用栈。
主要作用
- 简化多容器管理:无需手动逐个运行容器,通过配置文件统一管理。
- 环境一致性:开发、测试、生产环境使用相同配置,避免“在我机器上能跑”的问题。
- 快速部署:一条命令(
docker-compose up)即可启动完整服务栈(如 Web + DB + Cache)。 - 服务依赖控制:自动处理容器启动顺序和网络连接。
- 资源隔离:每个项目独立命名空间,互不干扰。
典型使用场景
- 本地开发环境搭建(如 Laravel + MySQL + Redis)
- CI/CD 流水线中的集成测试
- 微服务架构的快速原型验证
- 教学演示多服务协作系统
基本工作流程
- 编写
docker-compose.yml文件,定义服务、网络、卷等 - 在项目根目录执行
docker-compose up - Docker Compose 自动创建网络、拉取镜像、启动容器
- 应用即可通过预设端口访问
示例配置片段
version: '3.8'
services:
web:
image: nginx:alpine
ports:
- "80:80"
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: example