Docker Compose 服务依赖与健康检查
让 API 在 MySQL 真正可用后再启动:为数据库配置 healthcheck,并用 depends_on 的 service_healthy 条件建立依赖。
Apr 23, 2025 1 min read
Leave a thought
Comments live in GitHub Issues. Chinese and English pages share one conversation.
Loading comments…
让 API 在 MySQL 真正可用后再启动:为数据库配置 healthcheck,并用 depends_on 的 service_healthy 条件建立依赖。
Comments live in GitHub Issues. Chinese and English pages share one conversation.
容器已经启动,不代表容器里的服务已经可用。数据库还在初始化时,如果 API 立刻发起连接,通常会得到一次没有必要的启动失败。
Docker Compose 可以用
healthcheck描述“服务真正准备好了”的条件,再让依赖方等待这个状态。为 MySQL 配置健康检查
让 API 等待数据库
这里真正起作用的是
condition: service_healthy。它等待的是健康检查通过,而不是 MySQL 容器进入running状态。