Dockerオーバーレイはホスト間のコンテナ相互通信を実現します

Dockerオーバーレイはホスト間のコンテナ相互通信を実現します

環境説明

IP登録センター
192.168.20.5領事
192.168.20.6
192.168.20.7

1. Dockerの設定

すべての物理マシンを設定する必要があります。対応するネットワークカード名eno3consulアドレスを変更するだけです。

sudo vim /lib/systemd/system/docker.service
#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.20.5:8500 --cluster-advertise=eno3:2376 --insecure-registry=0.0.0.0/0

この設定ファイルは優先度が高いことに注意してください /etc/systemd/system/docker.service

起動を確認する

sudo systemctlデーモンリロード 
sudo systemctl docker.service を再起動します。 
ps -ef | grep dockerd

ここに画像の説明を挿入

2. レジストリとネットワークを作成する

Consulでネットワークセグメントとネットワーク名を作成する

docker run -d -p 8400:8400 -p 8500:8500 -p 8600:53/udp -h consul progrium/consul-server -bootstrap -ui-dir /ui
# サブネットを作成すると、ネットワークは他のマシンと自動的に同期されます docker network create -d overlay --subnet=192.168.21.0/24 overlay-net

チェック

ドッカーps
docker ネットワーク ls

ここに画像の説明を挿入

レジストリに接続されている物理マシンを表示する

ここに画像の説明を挿入

3. コンテナを起動する

コンテナ名は重複できません

# 192.168.20.5 で
docker run -d -it --name test1 --net=overlay-net centos bash
# 192.168.20.6 で
docker run -d -it --name test2 --net=overlay-net centos bash
# 192.168.20.7 で
docker run -d -it --name test3 --net=overlay-net centos bash

お互いにpingできることがわかります

ここに画像の説明を挿入

クロスホストコンテナの相互運用性を実現するための docker overlay に関するこの記事はこれで終わりです。より関連性の高い docker コンテナの相互運用性に関するコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Dockerコンテナ間のホスト間通信 - オーバーレイベースの実装方法
  • Docker のホスト間コンテナ通信オーバーレイ実装プロセスの詳細な説明
  • Docker クリーニングキラー/Docker オーバーレイ ファイルがディスク領域を大量に占有する
  • Docker クロスホストネットワーク (オーバーレイ) の実装
  • Dockerオーバーレイネットワークの構築方法

<<:  新しいウィンドウで開くジャンプメニュー、window.open の使い方の紹介

>>:  CSS でフローティングにより親要素の高さが崩れる問題を解決するいくつかの方法

推薦する

スーパーバイザーによるDockerfileのマルチサービスイメージパッケージ操作

Dockerfileの作成yumソースを設定する cd /tmp/docker vim Docker...

js を使用してネットワークカメラを呼び出し、一般的なエラーを処理します

最近、業務上の理由により、Web ページ上のさまざまなネットワーク カメラにアクセスしてデバッグする...

クールなIoT大画面機能を実現するHTML+VUEページング

効果デモ.html <html> <ヘッド> <メタ文字セット=&qu...

Vue3 Reactivityの実装方法を教えます

目次序文始めるちょっとした考えコードの実装真似する実装トラックトリガーの実装観察の実装計算の実装序文...

Reactの3つの主要属性におけるpropsの使用の詳細な説明

目次クラスコンポーネント機能コンポーネントプロパティは読み取り専用ですコンポーネント間通信前回は状態...

MySQL スライディングオーダー問題の原理と解決の例分析

この記事では、例を使用して、MySQL スライディング順序問題の原理と解決方法を説明します。ご参考ま...

JS ES6 スプレッド演算子の魔法のような使い方

目次1. 属性を追加する2. 複数のオブジェクトを結合する3. オブジェクトのプロパティを削除する4...

Nginx と GeoIP モジュールを使用して IP の地域情報を読み取る方法

LinuxにGeoIPをインストールする yum で nginx-module-geoip をインス...

docker runとstartの違い

docker における実行と開始の違いDocker run はミラーイメージを指定します。そしてdo...

Javascript での JSBridge に関する予備的研究

目次JSBridgeの起源JSBridgeの双方向通信原理JSはネイティブを呼び出すネイティブコール...

Nginx proxy_pass の / スラッシュによって引き起こされた殺人事件の詳細な説明

背景nginx サーバー モジュールは 2 つのサーバーにプロキシする必要があるため、異なるサーバー...

K8Sの高度な機能を理解するための記事

目次K8Sの高度な機能高度な機能要約するkubectl サービスの問題のトラブルシューティングK8S...

MySQL 8.0 の非表示列に対する基本操作

目次01 非表示の列を作成する02 非表示の列に対する基本操作03 非表示の列メタデータ04 主キー...

jsはショッピングサイトの虫眼鏡機能を実現します

この記事では、ショッピングサイトの虫眼鏡機能を実現するためのjsの具体的なコードを紹介します。具体的...

Sublime / vscode による HTML コード生成の迅速な実装

目次基本的なHTML構造div とクラス名のショートカット キーを生成するクラス名を持つdiv ID...