| 短语法 | depends_on: [db]:仅控制创建/启动顺序 |
|---|---|
| 长语法 | condition: service_started / service_healthy / service_completed_successfully |
| service_healthy | 依赖服务健康检查通过后才启动本服务(需配 healthcheck) |
| 注意 | depends_on 不会在依赖失败时自动重试本服务;应用仍应有重连逻辑 |
可靠等待示例
可靠等待示例
services:
web:
depends_on:
db:
condition: service_healthy
db:
image: mysql:8.0
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1"]
interval: 5s
timeout: 3s
retries: 20
编排不是银弹:应用侧还是要实现连接重试与超时退避,避免依赖短暂抖动导致整栈启动失败。