首页/云/Docker 容器速查/compose depends_on 启动依赖
本包目录(366 条)
基础命令50 条镜像与构建107 条网络与存储52 条
Compose 编排55 条
资源与安全50 条容器排障52 条

compose depends_on 启动依赖

声明服务启动顺序:短语法只保证容器启动先后,长语法配 condition: service_healthy 才能真正等待依赖就绪。

Docker 容器速查云更新于 2026-10-12
短语法depends_on: [db](仅启动顺序)
长语法condition: service_started / service_healthy / service_completed_successfully
关键点就绪等待必须有 healthcheck

示例

示例
services:
  api:
    image: app/api:1.4.2
    depends_on:
      db:
        condition: service_healthy
      migrate:
        condition: service_completed_successfully
  db:
    image: postgres:16-alpine
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 5s
      retries: 10
condition 是 compose 在本地启停时的真实等待能力;容器内应用仍建议带连接重试,覆盖依赖中途重启的情况。

易错点

  • 短语法下容器启动了不代表服务可用,应用启动握手失败多源于此,改用 service_healthy
  • 依赖服务没有 healthcheck 时 service_healthy 条件会报错,先给依赖补上检查

数据来源与参考

  • Docker 官方文档:Compose depends_on 参考(docs.docker.com/reference/compose-file/services)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌