我编写了一个 shell 脚本来重建一个测试数据库并在 docker-entrypoint-initdb.d 上加载 dumps.sql,然后执行 phpunit 测试。
docker-compose stop mysql
sudo rm -Rf ~/.laradock/data/mysql
docker-compose up --force-recreate --build -d mysql
docker-compose up -d nginx
docker-compose exec workspace phpunit
这工作正常。然而,第三行执行转储在后台加载并需要一些时间来加载。执行最后一行时,仍在加载数据库转储
我必须等待大约 1 或 2 分钟。我正在寻找一种解决方案,例如: - 在 2 个 shell 命令之间休眠或(到更好的代码) - 让最后一行等待转储加载的完全执行。
我怎么知道容器重建时调用的 docker-entrypoint-initdb.d 是否已满载?在 shell 脚本中使用。