独立した IP を介して Windows コンテナ イントラネットの Docker に直接アクセスする方法

独立した IP を介して Windows コンテナ イントラネットの Docker に直接アクセスする方法

Docker では、ポート マッピングを使用して、Docker コンテナーのサービスをホスト マシンまたは LAN 上の他のコンテナーに提供することを公式に推奨しています。一般的なプロセスは次のとおりです。

1. Dockerプロセスはホスト上のポートをリッスンし、ポートのデータパケットをDockerコンテナに送信します。

2. ホスト マシンはファイアウォールを開き、LAN 内の他のデバイスがホスト マシンのポートにアクセスし、docker のポートにアクセスできるようにします。

しかし、実際に使用するとあまり便利ではありません。

以下は、win10 環境で Docker コンテナを独立した IP 経由で LAN に公開する方法を記録します。

Docker のデフォルトの起動モードでは、仮想ネットワーク カードが生成され、コンテナー内に別のネットワーク カードと IP が割り当てられます。この仮想ネットワーク カードは、ホスト マシン上の ipconfig コマンドを通じて確認できます。

コンテナを開くと、コンテナの IP アドレスが自動的に割り当てられていることがわかります。

ホストマシン経由でpingを実行できません

ルーティングテーブルの設定によるIP相互通信の実装

ルートを表示 印刷

dockerのIPアドレスを表示する

ホストに公開されているポートは10.0.75.1です

ルートの追加

ルート -p 172.17.0.0 マスク 255.255.255.0 10.0.75.2 を追加します

コンテナアドレスを再pingする

これで、IP 経由で直接アクセスできるようになりました。

Docker はデフォルトでブリッジ ネットワークを使用し、コンテナーが起動されるたびに IP を自動的に割り当てるため、独自のネットワーク bridge1 を作成し、コンテナーの作成時に IP を指定し、独立した IP アクセスが必要な場合はルートを追加することができます。

のように

ルート -p 172.18.12.0 マスク 255.255.255.0 10.0.75.2 を追加します

ルートを削除する場合:

ルート削除 172.18.12.0

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • DockerイントラネットはDNSを構築し、ip:port操作の代わりにドメイン名アクセスを使用します
  • Docker コンテナでネットワーク リクエストが遅くなる問題の解決策
  • Dockerコンテナ内の独立IPにアクセスする方法
  • docker でプライベート サーバーを構築する方法 (CentOS 上の nginx と ssl を使用した docker-registry)
  • Docker ベースの lanproxy イントラネット侵入サービスの構築の詳細説明
  • Docker コンテナで DockerFile を使用して複数の Tomcat サービスをデプロイする手順
  • Docker イメージの作成、アップロード、プル、およびデプロイ操作 (Alibaba Cloud を使用)
  • Dockerイントラネット侵入FRP展開の実装プロセスの分析

<<:  MySQL 5.7.18 zip バージョンのインストール チュートリアル

>>:  ES6スプレッド演算子の使用例

推薦する

css3 flexレイアウト justify-content:space-between 最後の行は左揃えになります

justify-content:space-betweenレイアウトを使用する場合、要素の最後の行に...

Linux でメモリ使用量を確認する方法

システムの問題、アプリケーションの速度低下、または原因不明の問題をトラブルシューティングする場合、最...

単一マシン上での Tomcat の複数インスタンスの実装

1. はじめにまず、1 台のマシンで複数のインスタンスを使用する理由という質問に答える必要があります...

シンプルなjQuery + CSSを使用してカスタムタグタイトルツールチップを作成します

導入シンプルな jQuery + CSS を使用して、ブラウザのデフォルトの動作を置き換えるカスタム...

React プロジェクトで eslint の Baidu スタイルを使用する詳細な説明

1. Baidu Eslint Ruleプラグインをインストールする npm i -D eslint...

VMware 仮想マシンの 3 つの接続方法の例の分析

NATこのようにして、仮想マシンのネットワーク カードはホストの VMnet8 に接続されます。この...

WeChatアプレットにナンバープレート入力機能を実装

目次序文背景大きな推測パターンを見つける構造とスタイルコンポーネントの実装パラメータキーボードの種類...

CentOS 7 で MySQL 5.7.23 をアップグレードする際の落とし穴と解決策

序文最近、CentOS 7 で MySQL 5.7.23 をアップグレードする際に落とし穴を発見しま...

Bash の山括弧の深い理解 (初心者向け)

序文Bash には、ls、cd、mv などの重要な組み込みコマンドが多数あるほか、grep、awk、...

スケルトン スクリーンの読み込みプレースホルダー アニメーション効果を実装するための CSS + HTML (アニメーション付き)

効果上から下へフェードアウト ソースコードhtml、Angular構文を使用して、必要な構文を取得す...

単一の MySQL テーブル内の行数が 500 万を超えてはいけないのはなぜですか?

今日は、興味深いトピックについてお話ししましょう。データベースとテーブルを分割することを検討する前に...

JavaScript 配列のマージのケーススタディ

方法1: var a = [1,2,3]; var b = [4,5] b を連結します。 コンソー...

CocosCreator でカメラトラッキングに cc.follow を使用する方法

Cocos Creator バージョン: 2.3.4デモのダウンロード: https://files...

大きなオフセットによる MySQL 制限ページングが遅い理由と最適化ソリューション

MySQL では通常、limit を使用してページ上のページング機能を完了しますが、データ量が大きな...

オンライン MYSQL 同期エラーのトラブルシューティング方法の概要 (必読)

序文フェイルオーバーが発生した後、よくある問題は同期エラーです。データベースが小さい場合は、ダンプし...