X Chenノート------Dockerは容器に独立IPを配置する
2379 ワード
コンテナに独立したipアドレスを使用させるには、まずホストをブリッジモードに構成し、pipeworkコマンドを使用して指定したコンテナにipアドレスを割り当てます.
dockerは4つのネットワークモードをサポートし、--netオプションを使用して指定します. host,--net=host,このモードを指定すると、コンテナは独立したnetwork namespaceを得るのではなく、シンクホストと共有されます.コンテナは自分のネットワークカード、IPなどを仮想化するのではなく、ホストのIPとポートを使用します.つまり、コンテナがwebであれば、ホスト:ポートに直接アクセスします.NAT変換をする必要はありません.ホストでwebを走るのと同じです.コンテナにはネットワーク以外は隔離されています. container,--net=container:NAME_or_IDは、指定されたコンテナとネットワークを共同で使用し、NIC、IPなどもなく、2つのコンテナはネットワーク以外は隔離されています. none ,--Net=noneは、独立したnetwork namespaceを取得しますが、コンテナのネットワーク構成は行われず、自分で手動で構成する必要があります. bridge,--net=bridge、デフォルトdockerとコンテナはnatネットワークを使用し、一般的にIPを割り当てるのは172.17.0.0/16セグメントであり、他のセグメントに変更するには、ブリッジIPアドレスを直接変更することができます.例えば、 $ sudo ifconfig docker0 192.168.10.1 netmask 255.255.255.0
1.ブリッジ設備の設置
2.ブリッジカードの構成
まず、元のNICプロファイルのIPアドレス、マスク、ゲートウェイ、DNSを削除または注釈します.プロファイルに文BRIDGE="br 0"(ここでbr 0はブリッジカード名であり、実際にはbr 1,br 2など任意の名前でもよい)を追加します.
ブリッジNICプロファイルbr 0を追加し、ip、マスク、ゲートウェイ、DNSを書き込みます.
両方のNICのプロファイルが設定されている場合、NICの新しい構成を再起動すると有効になります.service network restart
3.コンテナを起動し、ネットワークモードをnoneと指定
4.pipeworkのインストール
5.コンテナにipアドレスを設定する
参照先:https://blog.csdn.net/feinifi/article/details/69487452
https://www.cnblogs.com/zipon/p/6362401.html
dockerは4つのネットワークモードをサポートし、--netオプションを使用して指定します.
1.ブリッジ設備の設置
#yum install -y bridge-utils
2.ブリッジカードの構成
まず、元のNICプロファイルのIPアドレス、マスク、ゲートウェイ、DNSを削除または注釈します.プロファイルに文BRIDGE="br 0"(ここでbr 0はブリッジカード名であり、実際にはbr 1,br 2など任意の名前でもよい)を追加します.
vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=27086e21-3a51-47f0-b03b-90362a902271
DEVICE=eth0
ONBOOT=yes
#IPADDR=10.7.31.236
#NETMASK=255.255.255.224
#GATEWAY=10.7.31.225
#DNS1=219.232.82.67
#DNS2=219.232.82.68
BRIDGE="br0"
ブリッジNICプロファイルbr 0を追加し、ip、マスク、ゲートウェイ、DNSを書き込みます.
#vi /etc/sysconfig/network-scripts/ifcfg-
TYPE=Bridge
BOOTPROTO=none
IPADDR=10.7.31.236
NETMASK=255.255.255.224
GATEWAY=10.7.31.225
DNS1=219.232.82.67
DNS2=219.232.82.68
NAME=br0
ONBOOT=yes
DEVICE=br0
両方のNICのプロファイルが設定されている場合、NICの新しい構成を再起動すると有効になります.service network restart
3.コンテナを起動し、ネットワークモードをnoneと指定
# docker run -it -d --net=none --name /bin/bash
4.pipeworkのインストール
# git clone https://github.com/jpetazzo/pipework.git
# cp -rp pipework/pipework /usr/local/bin
5.コンテナにipアドレスを設定する
# pipework ip / @
# pipework br0 dhcp 10.7.31.237/[email protected]
参照先:https://blog.csdn.net/feinifi/article/details/69487452
https://www.cnblogs.com/zipon/p/6362401.html