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 トランザクション分離レベルの原則例分析

導入あなたも面接でこれに遭遇したことがあるはずです。トランザクションの分離レベルについてお話ししまし...

CSSフロートの特性についての簡単な説明

この記事では、CSS フロートの特徴を紹介します。皆さんと共有し、自分用のメモとして残したいと思いま...

Dockerでデータディレクトリを移行する方法

目次ディスク使用量の表示ディスク クリーンアップ (軽々しく使用しないでください)データの移行ディス...

Redo ログと Undo ログに基づく MySQL クラッシュ回復の分析

目次MySQLクラッシュ回復プロセス1. ブラックボックス下のデータフローを更新する2. やり直しロ...

JavaScriptはクリックトグル機能を実装します

この記事の例では、クリックして切り替える機能を実装するためのJavaScriptの具体的なコードを参...

Vueの7つの値転送メソッドの詳細な説明

1. 父から息子へ子コンポーネントにpropsフィールドを定義し、その型は配列です (フィールド値の...

HTML でシンプルな ListViews 効果を実装するためのサンプル コード

シンプルなリストビュー効果を実現するHTML結果: CSS スタイル ファイル listviewTe...

LeetCode の SQL 実装 (184. 部門内で最も高い給与)

[LeetCode] 184. 部門最高給与従業員テーブルにはすべての従業員が保存されます。すべて...

Windows SSHサーバーを簡単に構築するためのいくつかの手順

ここで言及されている SSH は Security Shell と呼ばれます。Linux をよく使用...

Vueは画像のズームとドラッグをサポートするリッチテキストエディタを統合しています

必要:ビジネス要件によると、写真をアップロードできる必要があり、アップロードされた写真はモバイル端末...

Vueはミックスインを使用してコンポーネントを最適化します

目次ミックスインの実装フック関数のマージプロジェクト実践伸ばす要約するVue は mixins AP...

XHTML チュートリアル: Transitional と Strict の違い

実際、XHTML 1.0 は、Transitional DOCTYPE と Strict DOCTY...

MySQL SELECT実行順序の簡単な理解

SELECT ステートメントの完全な構文は次のとおりです。 (7)選択 (8) DISTINCT ...

リクエストを転送したり、静的リソースファイルにアクセスしたりする複数の場所への nginx の実装

この記事では主に、リクエストを転送したり、静的リソース ファイルにアクセスしたりする nginx の...

表に斜めヘッダー効果を出す5つの方法

誰もがテーブルをよく知っているはずです。コード内でよく見かけます。テーブルにスラッシュ ヘッダーを追...