Docker の 4 つのネットワーク タイプの主な例

Docker の 4 つのネットワーク タイプの主な例

4 つのネットワーク タイプ:

  • なし: コンテナのネットワーク機能を一切設定しません。--net=none
  • コンテナ: 実行中の別のコンテナとネットワーク名前空間を共有する、--net=container:containerID (K8S)
  • ホスト: ホストとネットワーク名前空間を共有する、--net=host
  • ブリッジ: Docker によって設計された NAT ネットワーク モデル

以下は個別に説明します。

なし:

[root@docker1 centos_zabbix]# docker run -it --network none centos6.9_ssh:v2 /bin/bash
[root@6ae597015723 /]# IPアドレス
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue 状態 UNKNOWN qlen 1
  リンク/ループバック 00:00:00:00:00:00 brd 00:00:00:00:00:00
  inet 127.0.0.1/8 スコープ ホスト lo
    valid_lft 永久 preferred_lft 永久

このようなものはIPを持たず、コンテナ内で操作できるため、あまり意味がありません。

コンテナ型ネットワーク:

[root@1c21de6080bb html]# [root@docker1 centos_zabbix]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
1c21de6080bb centos6.9_nginx_ssh:v3 "/bin/bash" 26秒前 25秒前 vigorous_payne
[root@docker1 centos_zabbix]# docker run -it --network コンテナ:1c21de6080bb centos6.9_nginx_ssh:v4 /bin/bash
 
ホスト名を共有するIPアドレスはプロパティを表示できます [root@docker1 centos_zabbix]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
41c457f6b89d centos6.9_nginx_ssh:v4 "/bin/bash" 5 分前 5 分前loving_curie
1c21de6080bb centos6.9_nginx_ssh:v3 "/bin/bash" 6 分前 6 分前 vigorous_payne
 
[root@docker1 centos_zabbix]# docker 検査 41c457f6b89d|grep -i ネットワーク
      "ネットワークモード": "コンテナ:1c21de6080bb8c83e800fa8b5fb15782a18bb61ab292050ca1172fbb866b1afc",
    「ネットワーク設定」: {
      「ネットワーク」: {}

最初にポートを使用したユーザーがそのポートを占有し、後から使用したユーザーはそのポートを使用できなくなることに注意してください。

ホストタイプ

[root@docker1 centos_zabbix]# docker run -it --network=host centos6.9_nginx_ssh:v2 /bin/bash

これは、ホストマシンとポートを共有するもので、最初に占有した人がそれを使用しますが、パフォーマンスは最高です。そのため、イメージを構築するときにこのパラメータを使用して、ネットワークタイプを統一し、イメージの構築効率を向上させます。

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

以下もご興味があるかもしれません:
  • Dockerネットワーク構成プロセスの詳細な紹介
  • Docker ネットワークの原理とカスタム ネットワークの詳細な分析
  • Docker コンテナのカスタム ホストのネットワーク アクセス操作
  • Dockerカスタムネットワークの詳細な紹介

<<:  jQueryでフルスクリーンスクロール効果を実現

>>:  mysql8.0.19 でパスワードを忘れた場合の完璧な解決策

推薦する

Vue はウェブページの言語切り替えの国際化を実装します

1. 基本的な手順1: yarn add vue-i18nをインストールするこのパスに新しい .js...

Linux プロセスが占有するポート番号を表示する 6 つの方法

Linux システム管理者にとって、サービスがポートに正しくバインドされているか、またはポートをリッ...

Nginx 静的ファイル サービスの構成と最適化の詳細な説明

ルートディレクトリとインデックスファイルroot ディレクティブは、ファイルの検索に使用するルート ...

CSS を使用して ul と li の水平配置を実現する 2 つの方法

li はブロックレベル要素であり、デフォルトで 1 行を占めるため、水平方向の配置を実現する場合は、...

カレンダーウィジェットのネイティブJS実装

この記事の例では、カレンダーウィジェットを実装するためのjsの具体的なコードを参考までに共有していま...

nginx で HSTS を有効にしてブラウザを HTTPS アクセスにリダイレクトする方法の詳細な説明

前回の記事では、https を使用したローカルノードサービスアクセスを実装しました。前回の記事の効果...

MySQL でグループ化した後、各グループの最大値を取得する詳細な例

MySQL でグループ化した後、各グループの最大値を取得する詳細な例1. テストデータベーステーブル...

HTML マルチメディア アプリケーション: Web ページにフラッシュ アニメーションと音楽を挿入する

1. HTML_falshアニメーションでのマルチメディアの応用(WebページへのFlashアニメー...

MySQLのロングトランザクションに関する深い理解

序文:この記事では主にMySQLのロングトランザクションに関する内容を紹介します。例えば、トランザク...

ウェブページ作成時に標準 HTML コードを使用する際のポイント

<br />多くのウェブサイト デザイナーが犯す最も一般的な間違いは、ウェブページが I...

CSSはインラインブロックのずれの問題を解決します

もうナンセンスじゃない、郵便番号HTML部分 <div class="positio...

html-webpack-plugin の使用方法の詳細な説明

最近、React プロジェクトで初めてhtml-webapck-pluginプラグインを使用しました...

MySql ページングで limit+order by を使用する場合のデータ重複の解決策

目次まとめ問題の説明問題を分析する問題を解決するまとめ複雑な知識をシンプルに説明できることは重要です...

CSSは下部のタップバー機能を実装します

現在多くの携帯電話には、下部のタブバーを切り替える機能があります。私も最近、同様の機能を見つけました...