php エディターの Xigua は、「なぜ Go 言語は Docker コンテナーのポート 8080 にアクセスできないのですか?」という一般的な質問に答えます。 Docker コンテナを使用する場合、コンテナの内部ポートにアクセスできないという問題がよく発生します。これは、多くの場合、Docker コンテナーのネットワーク構成の問題が原因で発生します。 Docker ネットワークを理解し、それに応じて調整することで、この問題を解決し、Go 言語が Docker コンテナ内のポート 8080 に正常にアクセスできるようにすることができます。以下、この問題を解決する方法を詳しく説明します。
そこで、シンプルな Go バックエンドを Cloud Run にデプロイしたいと考えています。ルーティングの処理には gin を使用します。それを処理する私の主な関数は次のようになります:
リーリーdocker を使用してビルドしてみましたが、うまくいきました。私の dockerfile は次のようになります:
リーリーそこで、Google Cloud CLI で docker run を使用して実行してみましたが、問題なく動作するようでした。 リーリー
しかし、ポート 8080 でプレビューしようとすると、アクセスできません:
クラウド実行にデプロイしてみましたが、当然のことながら、機能しませんでした。わかりました:
リーリー
私は何を間違えたのでしょうか? 解決策つまり、コメント内の@Hans Kilianの答えは正しいです。問題は、0.0.0.0 の代わりに localhost を使用しているためです。コード内で
0.0.0.0 に変更したつもりだったのですが、ビルド時にいくつかミスをしたようです。
以上がDocker でポート 8080 にアクセスできないのはなぜですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。