この問題の調査に数時間を費やし、解決策を見つけました。Dockerdepends_on
別のサービスを実行するには、サービスの起動を検討してください。 db
とすぐに起こるので、それよりも が開始されると、service-appはur db
に接続しようとします 、しかし、接続を受信する準備ができていません。したがって、db
を確認できます 接続を待機するアプリサービスのヘルスステータス。これが私の解決策です、それは私の問題を解決しました。 :)重要:docker-composeバージョン2.1を使用しています。
version: '2.1'
services:
my-app:
build: .
command: su -c "python manage.py runserver 0.0.0.0:8000"
ports:
- "8000:8000"
depends_on:
db:
condition: service_healthy
links:
- db
volumes:
- .:/app_directory
db:
image: postgres:10.5
ports:
- "5432:5432"
volumes:
- database:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
volumes:
database:
この場合、.shファイルを作成する必要はありません。皆さんのお役に立てば幸いです;)cya