1. Dockerネットワークカードを作成する[root@i ~]# brctl addbr docker0 [root@i ~]# ip addr add 192.168.42.1/24 dev docker0 # ここでの IP は Docker 内部で使用するためのもので、任意の IP を設定できます [root@i ~]# ip link set dev docker0 up [root@i ~]# ip addr show docker0 # ドッカーを表示 [root@i ~]# systemctl dockerを再起動します [root@i ~]# systemctl dockerを再起動します # dockerサービスを開始する 2. サブネットを追加する[root@i ~]# docker ネットワークバックエンドを作成します # このようにしてバックエンドサブネットを作成し、docker-compose はこのネットワークを直接使用できます。 # サブネットが共通でない場合は、次のコマンドを使用してセキュリティの問題をスキップします [root@i ~]# docker network create backend --subnet 172.24.24.0/24 [root@i ~]# docker ネットワーク ls ネットワーク ID 名前 ドライバー スコープ 6afff4d90f05 バックエンド ブリッジ ローカル 57de7f32064e ブリッジ ブリッジ ローカル 4b44a5340d6e ホスト ホスト ローカル ac8e8ffe243f なし null ローカル ここでバックエンドを見ることができます 3. ネットワークカードを削除する[root@i ~]# brctl 表示 #ブリッジのステータスを確認する ブリッジ名 ブリッジID STP対応インターフェース br-5db3fa0c465f 8000.02424cfb3937 いいえ veth038d483 ベス2950f5c 翻訳者 ベス715203f veth9f31643 翻訳者 docker0 8000.3a4803cd6298 なし veth9d3badb 翻訳者 [root@i ~]# brctl delif <ブリッジ名> <ポート名> #ブリッジ上のポートをアンインストールする [root@i ~]# ifconfig # ブリッジネットワークカード名があるか確認する [root@i ~]# ifconfig <ブリッジ名> down #このネットワークカードをオフにする[root@i ~]# brctl delbr <ブリッジ名> #ブリッジを削除する 補足: Docker-Composeによって自動的に作成されたブリッジとLAN間の競合に対する究極の解決策 1. 問題の説明docker-compose を使用してアプリケーションをデプロイする場合、docker のデフォルトのネットワーク モードはブリッジであり、デフォルトのネットワーク セグメントは 172.17.0.1/16 です。残念ながら、私たち自身の物理マシンの LAN もネットワーク セグメント 172.18.0.1/16 を使用しています。 docker-compose -f docker-compose.yml up -d を実行してサービスをデプロイすると、自動生成されたブリッジが順番に 172.18.xx を使用するようになりますが、悲しいことが起こりました。 docker によって生成されたブリッジはローカル エリア ネットワークと競合します。 こうして、Baiduプログラミングへの長い旅が始まりました... しかし、BaiduとGoogleを何度も調べて、お互いにコピーされた多くのブログを見つけ、最終的に何度も試行錯誤しましたが、結局は問題を解決できませんでした。 そこで、金含有量が99.9999999999999999999999999%のこの記事が公開されました。 この実験のDockerバージョン [root@node100 docker-compose]# docker info | grep 'サーバーバージョン' サーバーバージョン: 19.03.12 2. 解決策docker-composeによって作成されたコンテナを停止する docker-compose -f docker-compose.yml ダウン Dockerコンテナの操作 # Dockerコンテナを停止します sudo systemctl stop docker # docker0 ブリッジを停止します sudo ip link set dev docker0 down # docker0 ブリッジを削除します sudo brctl delbr docker0 # iptablesをリセットする sudo iptables -t nat -F ポストルーティング 追伸 # Linux brctl コマンドが見つかりません。brctl をインストールしてください yum で bridge-utils をインストール -y daemon.json を変更する # daemon.json ファイルを編集する vim /etc/docker/daemon.json # Dockerコンテナ「default-address-pools」のIPセグメントの設定を含む次のコンテンツを追加します: [ { 「ベース」:「192.168.0.0/16」、 「サイズ」: 24 } ] 追伸 注意: daemon.json に他のコンテンツが含まれている場合は、必ずコンマを使用して区切ってください。 Dockerコンテナを再起動する sudo systemctlデーモンリロード sudo systemctl dockerを起動します docker-composeコマンドを再インストールして起動します docker-compose -f docker-compose.yml アップ -d 3. 拡張計画ISSUESマスターによるソリューションを入手するにはここをクリックしてください 解決策1 解決策2 オプション3 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。 以下もご興味があるかもしれません:
|
>>: CSS シャドウ効果の比較: ドロップシャドウとボックスシャドウ
序文Nginx 構成のサーバー ブロック内の場所は、リクエスト URI を一致させるために使用され、...
VMwareでcentos8サービスをインストールしてコピーすると、次の問題が発生します。 コピー前...
成果を達成する実装コード <h1>123WORDPRESS.COM</h1>...
この記事では、例を使用して MySQL の重複インデックスと冗長インデックスについて説明します。ご参...
導入MySQL 5.7 は、SSL/TLS と全体的なセキュリティ開発におけるいくつかの重要な変更に...
MySQLはシーケンス関数を実装する1. シーケンスレコードテーブルを作成する テーブル `sys_...
1. 正規表現マッチング大文字と小文字を区別するマッチングの場合 ~ ~*は大文字と小文字を区別しな...
MySQL は、SQL 解析とクエリ最適化のプロセスを通じて SQL を実行します。パーサーは SQ...
CentOS7をダウンロード私がダウンロードしたイメージはCentOS-7-x86_64-DVD-1...
MySQL 5.7.19のインストールを例に挙げると、まずダウンロードしますもちろん、最初に行うこと...
目次概要画像圧縮とはJPEG/JPG JPGの利点JPGの使用シナリオJPGの欠点MozJPEG を...
進捗バーを実装するためのJavaScriptの具体的なコードは参考までに。具体的な内容は次のとおりで...
序文タイトルを見ると、誰もが「Debian 9 に MySQL をインストールするにはどうすればいい...
Fuser コマンドとは何ですか? fuser コマンドは、特定のファイル、ディレクトリ、またはソケ...
目次序文1. クロージャとは何ですか? 1.1 クロージャは条件コードを満たす1.2 クロージャ生成...