我试图确保我的应用程序容器不会运行迁移/启动,直到 db 容器启动并且 READY TO 接受连接。
因此,我决定使用 healthcheck,并依赖 docker 撰写文件 v2中的选项。
在应用程序中,我有以下内容
app:
...
depends_on:
db:
condition: service_healthy
另一方面,db 具有以下健康检查
db:
...
healthcheck:
test: TEST_GOES_HERE
timeout: 20s
retries: 10
我尝试了几种方法,比如:
Test: [“ CMD”,“ test-f var/lib/mysql/db”]
Test: [“ CMD”,“ echo‘ SELECT version () ;’| mysql”]
Test: [“ CMD”,“ mysqladmin”,“ ping”,“-h”,“ localhost”]
有人能解决这个问题吗?