私のチームはDocker Composeを使ってDjango Webアプリケーションを提供しています。私たちは、Gunicorn Webサーバー経由でDjangoを提供する1つのコンテナと、Nginxを使用して最初のコンテナへの逆httpプロキシである別のコンテナ(静的ファイルも提供します)を持っています。Docker restart policy = alwaysの後にNginxが動作しない=常に
ドッカーの「常時」再起動ポリシーを実装しようとしています。
リブート直後(またはドッカーエンジンを停止して元に戻した後)、ブラウザのWebページにアクセスすると、「ERR_EMPTY_RESPONSE localhostはデータを送信しませんでした」というエラーが表示されます。クイックの "docker-compose ps"は、両方のコンテナが期待どおりに動作していなくても動作していることを示しています。しかし、私たちが "ドッカーの再起動"を行うと、すべてが期待通りに機能します。
私は問題をローカライズしようとしている私の設定を調べています、そして、私が知っているのは、それがドッカーによって自動的に再起動された後のNginxコンテナの問題です。ホストマシンのポートをGunicornコンテナにマップしました.Gunicornコンテナにアクセスでき、そのコンテナは自動再起動後に正常に動作します。だから、排除のプロセスによって、それはNginxのコンテナの問題でなければならない。
Hereは、私たちのdocker-compose.ymlファイルです。
Hereは、Gunicorn Dockerfileです。
Hereは、Nginxの設定ファイルです。
誰でもこの問題の原因が何であるかについての洞察はありますか?それとももっと良い解決策ですか?アイデアを探しています。ありがとう!
Dockerのバージョンは何ですか? –