Docker Compose 5-Minute Tutorial: Get Started with Multi-Container Apps(2026-07-07)
如果你曾为一个简单的 Web 应用同时启动数据库、后端 API 和前端界面而手忙脚乱地敲十几条命令,那么 Docker Compose 就是你的救星。
什么是 Docker Compose?
想象一下:你有一个应用,包含 Nginx 反向代理、Python Flask 后端和 PostgreSQL 数据库。传统方式需要手动启动三个容器并配置网络。而 Compose 只需一个 docker-compose.yml 文件,一条 up 命令,全部搞定。
根据 2026 年 DevOps 年度报告,使用 Compose 的团队平均部署时间缩短了 47%,错误率降低 32%。
实战案例:5 分钟搭建博客系统
第一步:创建项目结构
myblog/
├── app/
│ ├── app.py
│ └── requirements.txt
└── docker-compose.yml
关键文件:docker-compose.yml
version: '3.8'
services:
web:
build: ./app
ports:
- "5000:5000"
depends_on:
- db
db:
image: postgres:15
environment:
POSTGRES_PASSWORD: example
volumes:
- pgdata:/var/lib/postgresql/data
volumes:
pgdata:
第二步:启动应用
docker compose up -d
等待 30 秒,打开 http://localhost:5000,一个完整的博客后台已经运行。
为什么你应该使用 Docker Compose?
| 场景 | 手动操作 | 使用 Compose |
|---|---|---|
| 启动 3 个服务 | 敲 6 条命令 + 配置网络 | 1 条命令 |
| 环境一致性 | 开发/生产环境常出问题 | 完全一致 |
| 团队协作 | 新人需查看文档手动配置 | 共享 yml 文件即可 |
实用建议
- 永远使用具名卷:避免数据丢失,如上例中的
pgdata - 环境变量分离:敏感信息用
.env文件管理 - 健康检查:给服务加上
healthcheck,确保依赖服务就绪后再启动
web:
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
interval: 30s
立即行动起来
打开终端,创建你的第一个 docker-compose.yml。不需要复杂的配置,从“一个 Web 服务 + 一个数据库”开始。
今日挑战:用 Compose 搭建一个 WordPress 博客(官方镜像即可),试试看需要几步?
免责声明:本文内容基于 2026 年 7 月 7 日的 Docker 版本编写。技术工具和最佳实践可能随时间更新,请以官方文档为准。本文提供的信息仅供参考,不构成任何专业建议。实际生产环境中,请根据具体需求进行充分测试和配置优化。