Windows 10でDockerコンテナのポートにアクセスできない問題に対する完璧な解決策

Windows 10でDockerコンテナのポートにアクセスできない問題に対する完璧な解決策

Windows 10 で Docker コンテナのポートにアクセスできない問題を解決する (ポート マッピングの問題)

Windows 10 サーバーに docker と docker-compose をインストールしました

そして、その中でNginxサービスを実行してみると、マッピングも完了します

問題: ホストのブラウザで localhost:port を開いても、対応する Web サービスにアクセスできません。

問題分析

理由: Docker は Linux 上で実行されます。Windows で Docker を実行するには、まず Windows に Linux 環境をインストールし、このシステムで Docker を実行する必要があります。

つまり、サービスで使用される localhost は、ホスト環境である Windows 10 ではなく、この Linux 環境のアドレスを参照します。

解決

Dockerコマンドラインウィンドウを起動する

コマンドを入力してください

docker-machine ip デフォルト

Linux IPアドレス、通常このアドレスは192.168.99.100です

次に、Windows ブラウザで http://IP:port と入力して有効にします (http://192.168.99.100:8069)

補足知識: Nacos 1.2.1 Nacos ローカルデプロイメントサービス、デフォルトポートの変更は無効、Docker デプロイメントではこの問題は発生しません

1. シナリオの説明

通常のプロジェクト開発プロセス、特に実稼働環境の展開では、機密ポートの使用を避けるようにします。このテストでは、Nacos-server-1.2.1 startup.bat で起動したサーバーのデフォルトポート 8848 が 8858 に変更され、Nacos に正常にアクセスしてログインできるようになりました。

しかし、プロジェクトを開始すると、8848 をプルするリソース サービスがまだ取得されます。現在、この問題は nacos-server-1.2.1 と nacos-server-1.3.2 に存在します。テストの結果、Docker 経由でデプロイされた Nacos サービスでは、デフォルトのポートを変更してもこの問題は発生しません。

2. 設定手順

nacos-server-1.2.1 フォルダの conf の下にある application.properties のポート構成を 8858 に変更します。

startup.cmdでnacos-server-1.2.1を起動します。

Nacosサービスが正常にアクセス可能かどうかを確認します

プロジェクト内のアクセス検出および構成センターのアドレスとポートを変更します

プロジェクトを開始する

3. 解決策

問題が発生した場合は、進捗状況を随時確認することができます

Dockerを使用してNacosサーバーをデプロイする

デフォルトのポートを使用し、ポートを変更しないでください

上記の記事は、Windows 10 で Docker コンテナのポートにアクセスできない問題を完全に解決します。これは、編集者があなたと共有するすべてのコンテンツです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • 複数の Docker コンテナが同じポート番号を持たない場合の解決策
  • 実行中のDockerコンテナのポートマッピングを変更する方法
  • Docker でコンテナのポート マッピングを動的に変更する方法
  • Dockerはポートを介してコンテナに接続します
  • Dockerはコンテナにポートを動的に公開します
  • Dockerコンテナがホストポートにアクセスできない場合の解決策
  • Dockerはコンテナポートバインディングのローカルポートを実装します

<<:  自己終了XHTMLタグを書くときに注意すべきこと

>>:  MySQLのよくある間違い

推薦する

MySQL シリーズ 10 同時実行制御を実装するための MySQL トランザクション分離

目次1.同時アクセス制御2. 取引1. トランザクションは ACID 原則に従います。 2. トラン...

WeChatミニプログラムビデオ集中砲火位置ランダム

この記事では、WeChatミニプログラムのビデオ弾幕の位置をランダム化するための具体的なコードを紹介...

docker compose を使用して consul クラスタ環境を構築する例

領事の基本概念サーバーモードとクライアントモードサーバー モードとクライアント モードは、consu...

MySQLデータベースインデックスの欠点と適切な使用

目次インデックスの適切な使用1. 通常のインデックスのデメリット2. 主キーインデックスの落とし穴3...

JavaScript の条件付きアクセス属性と矢印関数の紹介

目次1. 条件付きアクセス属性2. アロー関数の紹介1. 条件付きアクセス属性?. は ES2020...

Docker コンテナ アプリケーションで避けるべき 10 の悪い習慣

コンテナが企業の IT インフラストラクチャに欠かせない要素となっていることは間違いありません。コン...

MySQLでTEXT/BLOB型を使用する際の注意点を詳しく説明します

1. TEXTとBLOBの違いTEXT ファミリと BLOB ファミリの唯一の違いは、BLOB 型は...

VMWare 仮想マシン 15.X LAN ネットワーク構成チュートリアル図

最近、分散型およびビッグデータ技術について学ぶために、いくつかの仮想マシンに取り組んでいます。まず、...

MySQL ファントムリードとその排除方法の詳細な説明

目次トランザクション分離レベルファントムリーディングとは何ですか?ファントムリードを排除する方法要約...

削除、切り捨て、ドロップの違いと選択方法

序文先週、同僚が私に尋ねました。「兄さん、MySQL にバグを見つけました。午後にディスクをクリーン...

CSS 要約ノート: 変換、遷移、アニメーションの例

1.移行遷移プロパティの使用法: transition :transition-property t...

Tomcatにデプロイされたアプリケーションがフロントエンドページにアクセスできない問題について

最近、実践的なトレーニング プロジェクトを実行する際に ssm フレームワークを使用しました。プロジ...

TeamCenter12 にログインする際の 404/503 問題の解決方法

TeamCenter12はアカウントのパスワードを入力し、ログインをクリックすると、404または50...

MySQLデータベースに画像を保存するいくつかの方法

通常、ユーザーがアップロードした写真はデータベースに保存する必要があります。一般的に、解決策は 2 ...