私はインターネット上で「docker コンテナ間の通信_docker でコンテナ間の通信を実現する方法」に関連する多くの情報を読み、最終的に docker を使用して新しいネットワークを作成し (-d bridge ネットワーク ドライバーは bridge)、両方のコンテナをネットワークに接続して、データのやり取りを実現することにしました。 方法は次のとおりです。 自分でネットワークを作る [root@docker ~]# docker network create -d bridge my-bridge 01f3d92281d7dd6eaeabd77c95c62f0d33f8d45bd0e1bc7c7e1c3208526dfd2a
作成されたネットワークを表示します。 コンテナを起動し、自分で構築したネットワークmy-bridgeを使用する [root@docker ~]# docker run -d --name test3 --network my-bridge cgy/mycentos:v2 /bin/bash -c "while true;do sleep 3600;done" 44d549f38e2a38d528d26193c5585f8c68008411d764ad39d23dc57ee48ab28c
コンテナは独自に構築したネットワークを使用して起動しました。IPは172.18.0.2です。 別のコンテナ test4 を起動し、ネットワークを指定するために –network を使用せず、デフォルトで docker0 ネットワークを使用します。 [root@docker ~]# docker run -d --name test4 cgy/mycentos:v2 /bin/bash -c "while true;do sleep 3600;done" c64c2993e94a3dc0359a0e38ed5f5d262c0b01be45bacdf1788c7b0c2223777b コンテナ test3 と test4 が関連付けられていない場合、コンテナ名またはコンテナ IP のどちらが使用されているかに関係なく、ping は失敗します。 自作のmy-bridgeにtest4を追加する [root@docker ~]# docker ネットワーク接続 my-bridge test4
test4 を確認すると、もう 1 つの仮想ネットワーク カードがあり、それが test3 と同じネットワーク セグメント内にあることがわかります。 この時点で、コンテナ名を直接使用して通信することができます my-bridgeの詳細情報を再確認する [root@docker ~]# docker network で my-bridge を検査する [ { 「名前」: 「my-bridge」、 「ID」: 「01f3d92281d7dd6eaeabd77c95c62f0d33f8d45bd0e1bc7c7e1c3208526dfd2a」、 「作成日」: 「2018-05-01T01:08:04.864178764+08:00」、 「スコープ」:「ローカル」、 「ドライバー」:「ブリッジ」、 「IPv6を有効にする」:false、 「IPAM」: { "ドライバー": "デフォルト", 「オプション」: {}, 「設定」: [ { 「サブネット」: 「172.18.0.0/16」、 「ゲートウェイ」: 「172.18.0.1」 } ] }, 「内部」:偽、 「接続可能」: false、 「イングレス」:偽、 "設定元": { 「ネットワーク」: 「」 }, "ConfigOnly": false、 「コンテナ」: { "44d549f38e2a38d528d26193c5585f8c68008411d764ad39d23dc57ee48ab28c": { "名前": "test3", "エンドポイントID": "95f13c730e08f7c82e5f3ec555f3c3afa79a50eceb7a1f540463ba181c81d05c", "Macアドレス": "02:42:ac:12:00:02", "IPv4アドレス": "172.18.0.2/16", "IPv6アドレス": "" }, "c64c2993e94a3dc0359a0e38ed5f5d262c0b01be45bacdf1788c7b0c2223777b": { "名前": "test4", "エンドポイントID": "9b41a9ef9b3e6dabdaad52167642a74aa7e05f93ceec65768b311945c8f2c036", "Macアドレス": "02:42:ac:12:00:03", "IPv4アドレス": "172.18.0.3/16", "IPv6アドレス": "" } }, 「オプション」: {}, 「ラベル」: {} } ]
参照: https://www.jianshu.com/p/a9dce5179e31 Dockerコンテナ間の通信の実装方法については以上です。Dockerコンテナの通信についてさらに詳しく知りたい方は、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも123WORDPRESS.COMをよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS3ダイヤモンドパズルはdivのみを回転し、背景画像は回転しない機能を実現します
目次シナリオタスクアイデア分析するコンセプトと選択ちょっとしたテスト環境説明予防実践テスト引用シナリ...
Vue のフロントエンドとバックエンドのポートが一致していませんconfig index.jsファイ...
https://docs.microsoft.com/ja-jp/windows/wsl/wsl-...
問題の原因:スレーブサーバーがクローンマスターサーバーである場合、server-uuidの値は同じで...
データベース内のテーブルのフィールドとプロパティをエクスポートし、テーブルを作成してWordに保存す...
任意のテキスト エディターを開き、次のコードをコピーして、たとえば SomeFilename.htm...
1. ネイティブネットワークリクエスト1. XMLHttpRequest (W3C 標準) // 約...
【SQL】SQLページングクエリの概要開発プロセスではページングが必要になることがよくあります。今日...
目次SaltstackがZabbixサービスを導入httpd、mysql、phpをインストールするh...
この記事では、カルーセルマップの特殊効果を実現するためのJavaScriptの具体的なコードを参考ま...
まず第一に、この効果は古い話題であるはずだということはわかっています。今日ファイルを整理していたら、...
私が初めて Web 開発を独学で学んだ頃は、いわゆる DIV/CSS レイアウトはなく、テーブル レ...
目次PXEはサーバーの無人バッチ展開を実装します1. PXEの概要1.1 PXEとは何か1.2 キッ...
この記事では、複数の画像を切り替えるJavaScriptの具体的なコードを参考までに紹介します。具体...
プロフィールとは何ですか?特定の SQL のパフォーマンスを分析したい場合に使用できます。プロファイ...