一份 docker-compose.yml 声明:有哪些服务、用什么镜像、端口怎么映射、依赖怎么连接、数据卷怎么挂载。写好这份文件,整套环境一条命令就位。
Compose 特别适合开发环境与中小规模部署,让团队“拉代码 + 起服务”就能跑起来。
适用判断:单机多容器场景 Compose 足够;多机、高可用与自动扩缩容再上 K8s。
Compose 的核心能力。
应用/库/缓存一起管。
依赖与启动顺序。
数据持久化。
服务间网络通信。
配置与环境管理。
replicas 水平扩展。
从编写到启动。
定义服务、镜像、端口与依赖。
挂数据卷、声明网络,保证持久与连通。
up -d 启动全套服务,logs 查看日志。
down 清理、scale 扩展、配置化环境。
两种编排工具的取舍。
| 维度 | Compose | Kubernetes |
|---|---|---|
| 定位 | 单机编排 | 集群编排 |
| 复杂度 | 低 | 高 |
| 适用 | 开发/小规模 | 生产/大规模 |
| 学习成本 | 低 | 高 |
看 docker-compose logs 各服务日志,检查镜像、端口、依赖与网络配置。
用数据卷挂载持久化数据,避免容器删除后数据丢失。
小规模生产可用,但高可用/自动扩缩容需要 K8s。按规模选择。
用 .env 文件 + Compose 引用,敏感信息用 secrets 或外部配置管理。
