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 でフローティングにより親要素の高さが崩れる問題を解決するいくつかの方法

推薦する

Vue で PC 解像度の適応を実装するためのサンプルコード

目次プラン依存関係をインストールする依存関係の導入pxをremに変換するFlexible.jsを変更...

Linux 環境変数の設定方法のまとめ (.bash_profile と .bashrc の違い)

Linux では、アプリケーションをダウンロードしてインストールすると、起動時にアプリケーション名...

JavaScript はチェックボックスの選択機能を実装します

この記事の例では、すべてのチェックボックスの選択を実現するためのJavaScriptの具体的なコード...

MySQLの主キーと外部キーの使用と説明を簡単に説明します

目次1. 外部キー制約外部キーとは何ですか?外部キーを使用する条件:外部キーの定義構文は次のとおりで...

easycomモードでUNI-APPコンポーネントを呼び出す際に習得する必要がある実践的なスキル

この記事は議論の出発点となることを目的としています。詳細なドキュメントと easycom の仕様につ...

製品の拡大鏡効果を実現する JavaScript

この記事では、参考までに、製品拡大鏡を実装するためのJavaScriptの具体的なコードを紹介します...

CentOS6 アップグレード glibc 操作手順

目次背景glibc 2.14をコンパイルするソフトリンクを変更するやっと背景テスト環境には Cent...

Nginx リクエスト制限の設定方法

Nginx は、多くの優れた機能を備えた強力で高性能な Web およびリバース プロキシ サーバーで...

MySQL 5.7.20 圧縮版のダウンロードとインストールの簡単なチュートリアル

1. ダウンロードアドレス:参考: http://dev.mysql.com/downloads/m...

MySQLデータベースインデックスの詳細な紹介

目次マインドマップシンプルな理解インデックスモデルの進化二分探索木自己バランス型二分木BツリーB+ ...

Docker を使用して nginx で tomcat クラスターを構築する方法 (画像とテキスト付き)

まず、Tomcatフォルダを作成します。Dockerの設定を容易にするために、ルートディレクトリに直...

vue-router からのフロントエンドルーティングの 2 つの実装

目次モードパラメータハッシュ履歴ハッシュ履歴.push()ハッシュ履歴.replace()アドレスバ...

クリックナンバーゲームを実装するネイティブJS

参考までに、クリックナンバーゲームをネイティブJSで実装しました。具体的な内容は以下のとおりです。最...

MySQL における int の最大値の詳細な説明

導入2日前に見た問題について詳細に書きます。バイトコンピューターがバイナリに基づいていることは誰もが...