Docker-Compose:驗證MySQL 連線準備
在Docker Compose 環境中,必須確保您的應用程式容器不會啟動作業直到資料庫容器完全可操作並準備好接受連線。這就是 dependent_on 和 healthcheck 功能發揮作用的地方。
在您的設定中,應用程式容器依賴 db 容器,該容器是使用 healthcheck 定義的,以確定何時可以使用。然而,您貼文中提到的健康檢查測試(建立目錄、檢查版本或 ping 管理員)都不是資料庫就緒情況的可靠指標。
更有效的健康檢查包括使用mysqladmin 工具來測試是否MySQL 正在接受連接:
healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] timeout: 20s retries: 10
透過此健康檢查,應用程式容器將等待資料庫容器通過此測試,確保資料庫在之前完全可操作進行中。
以上是如何在 Docker Compose 環境中可靠地驗證 MySQL 資料庫準備情況?的詳細內容。更多資訊請關注PHP中文網其他相關文章!