Docker の 4 つのネットワーク モードとは何ですか?
Docker の 4 つのネットワーク モードは次のとおりです: 1. ホスト モード、「-net=host」で指定; 2. コンテナ モード、「-net=container:NAME_or_ID」で指定; 3. なしモード、「」で指定-net=none" を指定; 4. ブリッジモード。
このチュートリアルの動作環境: linux5.9.8 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。
実装原理
Docker は、Linux ブリッジング (「Linux 仮想ネットワーク テクノロジ」を参照) を使用して、ホスト上の Docker コンテナ ブリッジ (docker0) を仮想化します。Docker がコンテナを起動すると、 Docker ネットワークに基づく ブリッジのネットワーク セグメントには、Container-IP と呼ばれる IP アドレスがコンテナに割り当てられ、Docker ブリッジは各コンテナのデフォルト ゲートウェイになります。同じホスト内のコンテナはすべて同じネットワーク ブリッジに接続されているため、コンテナはコンテナの Container-IP を介して直接通信できます。
Docker ブリッジはホストによって仮想化されており、実際のネットワーク デバイスではありません。外部ネットワークからアドレス指定することはできません。これは、外部ネットワークが直接 Container-IP を介してコンテナにアクセスできないことを意味します。コンテナーに外部からアクセスできるようにする必要がある場合は、コンテナーのポートをホストにマップ (ポート マッピング) できます。つまり、docker run がコンテナーを作成するときに -p または -P パラメーターを通じて有効にし、[ホスト IP] を使用します。 ] コンテナにアクセスする場合:[コンテナポート] コンテナにアクセスします。
4 種類のネットワーク モード
Docker ネットワーク モード | 構成 | 手順 |
---|---|---|
ホスト モード | –net=host | コンテナとホストはネットワーク名前空間を共有します。 |
コンテナ モード | –net=container:NAME_or_ID | コンテナは、ネットワーク名前空間を別のコンテナと共有します。 kubernetes のポッドは、複数のコンテナーによって共有されるネットワーク名前空間です。 |
none モード | –net=none | コンテナには独立した Network 名前空間がありますが、割り当てなどのネットワーク設定は行われません。 veth ペアとブリッジ接続、IP の設定など。 |
ブリッジ モード | –net=bridge | (デフォルトはこのモードです) |
ホスト モード
コンテナの起動時にホスト モードを使用すると、コンテナは独立したネットワーク ネームスペースを取得せず、ホストとネットワーク ネームスペースを共有します。コンテナは独自のネットワーク カードを仮想化したり、独自の IP を設定したりすることはなく、ホストの IP とポートを使用します。ただし、ファイル システム、プロセス リストなど、コンテナーの他の側面は依然としてホストから分離されています。
ホスト モードを使用するコンテナは、ホストの IP アドレスを直接使用して外部と通信できます。コンテナ内のサービス ポートもホストのポートを使用できます。NAT は必要ありません。ホストの最大の利点は、ネットワークのパフォーマンスは比較的良好ですが、Docker ホストで既に使用されているポートは使用できなくなり、ネットワークの分離は良好ではありません。
ホスト モードは次のとおりです。
コンテナ モード
このモードでは、新しく作成されたコンテナと既存のコンテナは、ホストではなくネットワーク名前空間を共有します。新しく作成されたコンテナーは、独自のネットワーク カードを作成して独自の IP を構成しませんが、指定されたコンテナーと IP、ポート範囲などを共有します。同様に、ネットワークとは別に、2 つのコンテナはファイル システムやプロセス リストなどの他の側面でも分離されています。 2 つのコンテナのプロセスは、ネットワーク カード デバイスを介して通信できます。
コンテナ モード図:
none モード
none モードを使用すると、Docker コンテナは独自のネットワークを持ちます。ただし、 Namespace は、Docker コンテナーのネットワーク構成を実行しません。つまり、この Docker コンテナにはネットワーク カード、IP、ルーティングなどの情報がありません。ネットワーク カードの追加、IP の構成などを Docker コンテナに自分で行う必要があります。
このネットワーク モードでは、コンテナには lo ループバック ネットワークのみがあり、他のネットワーク カードはありません。 none モードは、コンテナの作成時に --network=none で指定できます。このタイプのネットワークはインターネットに接続できませんが、閉じたネットワークによりコンテナのセキュリティを確保できます。
なしモード図:
ブリッジ モード
Docker プロセスが開始されると、プロセスは次のように作成されます。ホスト docker0 という名前の仮想ブリッジ。このホストで開始された Docker コンテナは、この仮想ブリッジに接続されます。仮想ブリッジは物理スイッチと同様に機能するため、ホスト上のすべてのコンテナはスイッチを介してレイヤー 2 ネットワークに接続されます。
docker0 サブネットからコンテナーに IP を割り当て、docker0 IP アドレスをコンテナーのデフォルト ゲートウェイとして設定します。ホスト上に仮想ネットワーク カードの veth ペア デバイスのペアを作成します。Docker は、新しく作成されたコンテナーに veth ペア デバイスの一方の端を配置して eth0 (コンテナーのネットワーク カード) という名前を付け、もう一方の端は同様の名前でホスト内に配置します。 like vethxxx. このネットワーク デバイスに名前を付けて、docker0 ブリッジに追加します。 brctl show コマンドを使用して表示できます。
ブリッジ モードは docker のデフォルトのネットワーク モードであり、--net パラメータを記述しない場合はブリッジ モードになります。 docker run -p を使用すると、docker は実際に iptables で DNAT ルールを作成し、ポート転送機能を実装します。 iptables -t nat -vnL を使用して表示できます。
ブリッジ モードを次の図に示します。
推奨学習: 「docker ビデオ チュートリアル 」
以上がDocker の 4 つのネットワーク モードとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PyCharm でプロジェクトをパッケージ化するには 4 つの方法があります。 別個の実行可能ファイルとしてパッケージ化する: EXE 単一ファイル形式にエクスポートする。インストーラーとしてパッケージ化されています: Setuptools Makefile を生成してビルドします。 Docker イメージとしてパッケージ化する: イメージ名を指定し、ビルド オプションを調整してビルドします。コンテナとしてパッケージ化する: ビルドするイメージを指定し、ランタイム オプションを調整して、コンテナを起動します。

PHP 分散システム アーキテクチャは、ネットワークに接続されたマシン全体にさまざまなコンポーネントを分散することで、スケーラビリティ、パフォーマンス、およびフォールト トレランスを実現します。このアーキテクチャには、アプリケーション サーバー、メッセージ キュー、データベース、キャッシュ、ロード バランサーが含まれます。 PHP アプリケーションを分散アーキテクチャに移行する手順は次のとおりです。 サービス境界の特定 メッセージ キュー システムの選択 マイクロサービス フレームワークの採用 コンテナ管理への展開 サービスの検出

概要 LLaMA-3 (LargeLanguageModelMetaAI3) は、Meta Company が開発した大規模なオープンソースの生成人工知能モデルです。前世代のLLaMA-2と比べてモデル構造に大きな変更はありません。 LLaMA-3 モデルは、さまざまなアプリケーションのニーズやコンピューティング リソースに合わせて、小規模、中規模、大規模などのさまざまな規模のバージョンに分割されています。小型モデルのパラメータ サイズは 8B、中型モデルのパラメータ サイズは 70B、大型モデルのパラメータ サイズは 400B に達します。ただし、トレーニング中の目標は、マルチモーダルおよび複数言語の機能を達成することであり、その結果は GPT4/GPT4V に匹敵することが期待されます。 Ollama をインストールするOllama は、オープンソースの大規模言語モデル (LL) です。

回答: PHP マイクロサービスは、アジャイル開発のために HelmCharts でデプロイされ、分離とスケーラビリティのために DockerContainer でコンテナ化されます。詳細説明: HelmCharts を使用して PHP マイクロサービスを自動的にデプロイし、アジャイル開発を実現します。 Docker イメージを使用すると、マイクロサービスの迅速な反復とバージョン管理が可能になります。 DockerContainer 標準はマイクロサービスを分離し、Kubernetes がコンテナの可用性とスケーラビリティを管理します。 Prometheus と Grafana を使用して、マイクロサービスのパフォーマンスと健全性を監視し、アラームと自動修復メカニズムを作成します。

ピン張りのノードの詳細な説明とインストールガイドこの記事では、ピネットワークのエコシステムを詳細に紹介します - PIノードは、ピン系生態系における重要な役割であり、設置と構成の完全な手順を提供します。 Pinetworkブロックチェーンテストネットワークの発売後、PIノードは多くの先駆者の重要な部分になり、テストに積極的に参加し、今後のメインネットワークリリースの準備をしています。まだピン張りのものがわからない場合は、ピコインとは何かを参照してください。リストの価格はいくらですか? PIの使用、マイニング、セキュリティ分析。パインワークとは何ですか?ピン競技プロジェクトは2019年に開始され、独占的な暗号通貨PIコインを所有しています。このプロジェクトは、誰もが参加できるものを作成することを目指しています

DeepSeekをインストールするには、Dockerコンテナ(最も便利な場合は、互換性について心配する必要はありません)を使用して、事前コンパイルパッケージ(Windowsユーザー向け)を使用してソースからコンパイル(経験豊富な開発者向け)を含む多くの方法があります。公式文書は慎重に文書化され、不必要なトラブルを避けるために完全に準備します。

コンテナ化により、次の方法で Java 関数のパフォーマンスが向上します。 リソースの分離 - 分離されたコンピューティング環境を確保し、リソースの競合を回避します。軽量 - 消費するシステム リソースが少なくなり、実行時のパフォーマンスが向上します。高速起動 - 関数の実行遅延を軽減します。一貫性 - アプリケーションとインフラストラクチャを分離して、環境全体で一貫した動作を保証します。

Docker コンテナを使用した Java EE アプリケーションのデプロイ: Dockerfile を作成してイメージを定義し、イメージを構築し、コンテナを実行してポートをマップし、ブラウザでアプリケーションにアクセスします。サンプル JavaEE アプリケーション: REST API はデータベースと対話し、Docker 経由でデプロイ後にローカルホストでアクセスできます。
