docker-compose

Docker Compose 多容器编排

补充说明

docker compose(v2 插件,旧命令是 docker-compose)按 compose.yaml 启动多容器应用,适合本地开发和单机部署。它管理容器、网络和卷,但不负责多节点调度。

常用示例

docker compose up -d
docker compose up -d --build
docker compose ps
docker compose logs -f web
docker compose exec web sh
docker compose run --rm web npm test
docker compose build
docker compose pull
docker compose restart web
docker compose config
docker compose up --scale web=3 -d
docker compose -f compose.prod.yaml up -d
docker compose --env-file .env.prod up -d
docker compose --profile debug up -d
docker compose down
docker compose down -v

易错点与排错

相关命令

读完自测

合上页面,先回答,再展开对照。

  1. 怀疑环境变量没有按预期生效时,用什么命令查看最终值?优先级是什么?
  2. depends_on 能保证依赖服务已经就绪吗?如果不能,应该补充什么?
  3. 执行 docker compose down -v 前必须确认什么?
答案
  1. 用 docker compose config 查看最终值;优先级为 shell > .env > compose 文件默认值。
  2. 不能,它只保证启动顺序,不保证服务就绪;需要健康检查或重试逻辑。
  3. 必须先确认已备份,因为 down -v 会删除命名卷及其中的数据。