Docker の通信モードは次のとおりです: 1. ブリッジ ネットワーク モード (ブリッジ ブリッジとも呼ばれます)。ネットワークが指定されていない場合、コンテナ間の通信はブリッジ ブリッジを通じて実行されます。2. ホスト ホスト モード; 3. コンテナネットワーク モード; 4. なしネットワーク モード。
このチュートリアルの動作環境: linux5.9.8 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。
Docker コンテナの 4 つの通信モード
1. ブリッジ ネットワーク モード
まずは、デフォルトでは、docker がコンテナを実行すると、ホストは docker 0 という名前の仮想ブリッジであるブリッジを作成します。デフォルトの docker 0 ip は 172.17.0.1 です。その後、ブリッジは仮想サブネット ip をコンテナに割り当て、ネットワークを使用します。ブリッジ IP はゲートウェイとして機能します。ネットワークを指定せずに、コンテナ間の通信はブリッジネットワーク経由で行われます。次に、ブリッジは IP 変換、ポート マッピングなどのためにホスト イメージと通信します。
実際、ネットワーク通信の経験がある学生は、下の図を見ると、この通信の原理を簡単に理解できるはずです。これは、レイヤ 3 のルーティングとスイッチングに似ています。
#2. ホスト ホスト モード
コンテナーがネットワーク モードをホストとして指定する場合、コンテナーには独自のホスト モードがありません。ネットワーク名前空間. 代わりに、ネットワークと IP をホストと共有します. コンテナは独自のネットワーク カードや IP などを仮想化しません. もちろん、ホストにバインドされているネットワーク通信を除き、コンテナの残りのコンテンツは仮想化されませんホストから安全に隔離されています。これはコンテナの移行を行う際に非常に不便なので、お勧めできません。原理図は次のとおりです:
3. コンテナ ネットワーク モード:
分析: 実行中の別の Docker コンテナとネットワークを共有します。 --net=container:containerID
コンテナの直接ポートと競合しないようにし、先着順の原則を採用します
4、ネットワーク モードなし
コンテナはネットワーク モードを指定します - net が none の場合、Docker コンテナは独自のネットワーク名前空間を持ちますが、IP、ネットワーク カードなどのすべてのネットワーク構成は自分で構成する必要がありますこの方法は非常に面倒なのでお勧めしません。原理図は次のとおりです
概要:
Docker通信モード | 構成 | 説明 |
---|---|---|
ホストモード | #–net=host | コンテナとホストはネットワーク名前空間を共有します。 |
コンテナ モード | –net=container:NAME_or_ID | コンテナは、ネットワーク名前空間を別のコンテナと共有します。 kubernetes のポッドは、複数のコンテナーによって共有されるネットワーク名前空間です。 |
none モード | –net=none | コンテナには独立した Network 名前空間がありますが、割り当てなどのネットワーク設定は行われません。 veth ペアとブリッジ接続、IP の設定など。 |
–net=bridge | (デフォルトはこのモードです) |
docker ビデオ チュートリアル 」
以上がdockerの通信モードは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。