2 回答

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個(gè)贊
似乎有一些缺少的端口被公開:5432:5432
只需添加它即可從問題中排除端口,也從您遇到的錯(cuò)誤中排除,似乎您的 docker 應(yīng)用程序容器依賴于數(shù)據(jù)庫容器,因此您需要一種等待數(shù)據(jù)庫容器啟動(dòng)并且應(yīng)用程序容器可以連接它的方法,檢查depends_on
docker compose:
version:?'3'services:web: ??build:?. ??ports: ????-?"3000:3000" ??depends_on: ????postgres ??restart_policy: ????condition:?on-failure ??postgres: ????image:?"postgres" ????ports: ??????-?"3000:3000" ????environment: ??????POSTGRES_USER:?'anurag' ??????POSTGRES_PASSWORD:?'anu_12345' ??????POSTGRES_DB:?'bankingapp'
使用depends_on時(shí)需要注意以下幾點(diǎn):
depends_on 在啟動(dòng) web 之前不會(huì)等待 db 和 redis 準(zhǔn)備好 - 直到它們啟動(dòng)。如果您需要等待服務(wù)準(zhǔn)備就緒,請(qǐng)參閱控制啟動(dòng)順序以了解有關(guān)此問題的更多信息以及解決該問題的策略。
版本3不再支持depends_on的條件形式。
使用版本 3 Compose 文件以 swarm 模式部署堆棧時(shí),將忽略 dependent_on 選項(xiàng)。
根據(jù)上述說明,您可能仍然面臨問題,但重新啟動(dòng)策略將重新啟動(dòng)應(yīng)用程序容器,并且您將連接到數(shù)據(jù)庫。
- 2 回答
- 0 關(guān)注
- 179 瀏覽
添加回答
舉報(bào)