ホームページ  >  記事  >  バックエンド開発  >  Docker でポート 8080 にアクセスできないのはなぜですか

Docker でポート 8080 にアクセスできないのはなぜですか

WBOY
WBOY転載
2024-02-11 18:54:08922ブラウズ

Docker でポート 8080 にアクセスできないのはなぜですか

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 サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。