ドッカーコンテナ(5) - ドッカー静的IP

(1).Docker 4つのネットワークモード

  ドッカーが--net = [パラメータ]オプション(今も利用可能--network [パラメータ])で、次の4つのモードがあります指定します。

    ホストモード:ホストのIPアドレスとポート。指定された--net =ホストを使用してください。

    コンテナモード:コンテナおよび共有IPとポートを指定します。【容器インスタンス名またはID]指定:--net =コンテナを使用。

    なしモード:コンテナのネットワーク機能を閉じます。指定された--net = noneを指定します。

    ブリッジモード:容器を分配IP、及び容器が仮想ブリッジをdocker0に接続され、docker0 iptablesのNATテーブルの設定によりブリッジは、ホストとの通信を実現します。デフォルトモード、指定--net =ブリッジ。

  デフォルトでは、ブリッジを選択し、コンテナの起動時に、自動的にDHCPでアドレスを取得します。CentOS7システム、ドッキングウィンドウ環境、あなたは(同じネットワークセグメントとホストすることができます)IP固定コンテナを割り当てたい場合は、スクリプトを使用することができる配管(上のネットワーク選択モードなし)。

  注1:ドッカdridgeのデフォルトモードは、VMware NATモードに対応し、コンテナのスクリプトに割り当てられたIP固定配管は、VMwareのブリッジモードに対応します。

  注2:コンテナを再起動すると、IPの配管の設定が自動的に消えます、リセットする必要があります。

(2)静的IP容器を構成します

 1)ブリッジネットワークを設定します

[youxi1ルート@〜]#橋のyum -Y-utilsのインストール
[youxi1ルート@〜]#のCD / etc / sysconfig / network-scriptsに/ 
[youxi1ネットワークスクリプト@ルート]#のCP-ens33のifcfg {、。} BAK 
[ youxi1 @ルートネットワークスクリプト]#のLS-ens33のifcfg * 
のifcfg-ens33のifcfg-ens33.bak 
[youxi1ネットワークスクリプト@ルート]#件のvimのifcfg-ens33 
#IPADDR = "192.168.5.101" // IP、サブネットをコメントアウトマスク、ネットワークカード、DNSの
#のPREFIXは= "24" 
#GATEWAY = "192.168.5.2" 
#1 DNS1 = "192.168.5.2" 
BRIDGE = "BR0" // BR0にブリッジ追加
[ルート@ youxi1ネットワーク-スクリプト]位のifcfgをVIM -br0 //新しいBR0プロファイル
デバイス= "BR0" //デバイス名
NM_CONTROLLED = "yes"を
ONBOOT = "yes"を
TYPE = "橋" //ノートでは、Bは大文字
BOOTPROTO =なし255.0 
GATEWAY = 192.168.5.2 
IPADDR = 192.168.5。101の// IPアドレス、サブネットマスク、ゲートウェイ、DNSは、上記と同じようにコメントアウトします
NETMASK = 255.255.255.0 
DNS1 = 192.168.5.2 
[ルートyouxi1ネットワーク-スクリプト@]#systemctlの再起動ネットワーク//重启网络
[ルートyouxi1ネットワーク-スクリプト@]#のIP SH 
1:LO:<LOOPBACK、UP、LOWER_UP> MTU 65536なqdisc NOQUEUE状態UNKNOWNグループのデフォルト千QLEN 
    リンク/ループバック00:00:00:00:00:00 BRD 00:00:00:00:00:00 
    INET 127.0.0.1/8範囲ホストLO 
       valid_lft永遠preferred_lft永遠
    のinet6: :1/128スコープホストは
       永久preferred_lft永久valid_lft 
2:ens33:1000 QLEN <ブロードキャスト、マルチキャスト、UP、LOWER_UP> MTU 1500なqdiscのpfifo_fastマスタBR0状態UPグループのデフォルト
    リンク/エーテル00:0C:29:E6:D6:27 BRD FF:FF:FF:FF:FF:FF
3:docker0 <NO-CARRIER、ブロードキャスト、マルチキャスト、UP> MTU 1500なqdisc NOQUEUEグループのデフォルトのダウン状態
    エーテルリンク/ 02:42:8B:EE:A5:51 BRD FF:FF:FF:FF:FF:FF 
    INET 172.17.0.1/16 BRD 172.17.255.255範囲グローバルdocker0 
       valid_lft永久preferred_lft永久
4:BR0:1000 QLEN <ブロードキャスト、マルチキャスト、UP、LOWER_UP> MTU 1500なqdisc NOQUEUE状態UPグループのデフォルト
    リンク/エーテル00:0C:29:E6: D6:27 BRD FF:FF:FF:FF:FF:FF 
    INET 192.168.5.101/24 BRD 192.168.5.255スコープグローバルnoprefixrouteのBR0は
       永遠にpreferred_lft永遠valid_lft 
    d627 / 64スコープリンク:29ff:料金6 INET6 FE80 :: 20cは
       永遠にvalid_lft永遠preferred_lft

 2)配管をダウンロード

  ダウンロード配管アドレス:https://github.com/jpetazzo/pipework良いは、Windows上でダウンロードすることができた後、CentOSのサーバーを置くためにアップロードされ、あなたはまた、gitのクローンhttps://github.com/jpetazzo/pipework.git CentOSのサーバー上で直接ダウンロードするコマンドを使用することができます。

[ネットワークスクリプトyouxi1ルート@] -Y#yumの解凍をインストール
[youxi1ルート・ネットワークスクリプト@]#〜CD 
解凍pipework-master.zip //抽出[youxi1ルート@〜]#
[ルート@のyouxi1〜]#のcp配管を-master /配管は/ usr / local / binに/ // 直接呼び出されます

 3)静的IPコンテナを設定するには

[ルート@ youxi1〜]#]ドッキングウィンドウのイメージ
SIZE作成したリポジトリのタグ画像のID 
6日前に346メガバイトのCentOSのHTTPD 65f64a254fccを
CentOSの最新67fa590cfc1c 4週間前に202メガバイト
292メガバイトhub.c.163.com/library/tomcat最新72d2be374029 2年前
[ルート@ youxi1最新のbash:〜]#]ドッキングウィンドウの実行は、none --privileged CentOSの--network -itd 
51c03944e31297272541cc035e235f326a8933d066021e945d8ea4caf8fd1c17 
[ルート@ youxi1〜]#の配管のBR0 51c03944e312 192.168.5.102/[email protected] 
[ルート@ youxi1〜]#ピング192.168.5.102の
PINGをデータの192.168.5.102(192.168.5.102)56(84)バイト。
icmp_seqは= 64 1 TTL =時間= 0.218 MS:192.168.5.102 64からのバイト
icmp_seq TTL = 2 = 64時間= 0.085 MS:192.168.5.102から64バイト
^ C 
のping統計の192.168.5.102 --- --- 
2つの送信パケット、受信2、0%パケットロス、1000msの時間
RTT分/ AVG /最大/(MDEV)= 0.085 / 0.151 / 0.218 / 0.067 MS 
[youxi1ルート@〜] STOP番号のsystemctlのfirewalld.service //あなたはドメインをインストールおよびpingしたい場合はNET-ツールは、ファイアウォールをオフにしてください。
#ドッカーが迅速化ITはbashのExecの51c03944e312 [ルート@〜youxi1] 
[51c03944e312 @ルート/]ピングwww.baidu.com位
PING www.a.shifen.com(180.101.49.11)56は、データ(84)バイト。
から64のバイト180.101.49.11(180.101.49.11):icmp_seqのTTL = 128 1時間= 7.92 MS = 
180.101.49.11から64バイト(180.101.49.11):2 icmp_seqのTTL =時間= 7.99 MS = 128 
^ C
--- www.a.shifen.com ping統計--- 
送信パケット2、2、0%パケット損失を受け、時間1001ms 
RTT分/平均/最大/ MDEV = 7.922 / 7.960 / 7.999 / 0.097 MS 
[ルート51c03944e312 @ /]#yumを-yネットツールをインストールし
、[ルート51c03944e312 /]#ifconfigコマンドの@ 
のeth1:フラグ= 4163 <UP、BROADCAST、RUNNING、マルチキャスト> MTU 1500 
        のinet 192.168.5.102、ネットマスク255.255.255.0ブロードキャスト192.168.5.255の
        エーテルB2:68 :6F:3F:2D:1000(イーサネット)txqueuelen DD 
        RXパケット1532バイト8274432(7.8 MIB)
        RXエラー0 0超過0フレーム0ドロップ
        TXパケット1378バイト78622(76.7 KiBの)を
        TXエラー0 0超過0キャリア0衝突を落とし0 
 
LO:フラグ= 73 <UP、ループバック、RUNNING> MTU 65536
        のinet 127.0.0.1ネットマスク255.0.0.0 
        ループ1000(ローカルループバック)txqueuelen 
        RXパケットの4バイト336(336.0 B)
        RXエラーは0 0超過0フレーム0ドロップ
        TXパケット4つのバイト336(336.0 B)
        0 0超過0キャリアをドロップTXエラーを0衝突0

  注:私はあなたがIPの後に静的ポートを追加する必要がどのような設定がわからないので、私は、ファイアウォールを閉じたので。

4)拡張

  --privilegedオプションは、特権モードで表示します。ショーは、ルートユーザ、一般ユーザの実際には、唯一のホスト(物理マシン)、及び装置が内部で使用することができない含むコマンド・ファイルの一部であるが、このオプションではないコンテナインスタンスは、存在しません。このオプションを使用する場合は、mountコマンドとして、コンテンツのこの部分を呼び出すことができます。

  次のようにテストは以下のとおりです。

-it CentOSの[ルート@ youxi1〜]#]ドッキングウィンドウの実行:最新のbash 
[ルート@ d1d63355d418 /]#LSとは/ dev / 
コンソールFD mqueueをptmxランダム標準エラー出力の標準出力urandomがの
コアフルヌルPTS SHM標準入力のttyゼロ
[ルート@の05b2b38259cf /]#出口
終了
のCentOSを--privileged -it [ルート@ youxi1〜]#]ドッキングウィンドウの実行:最新のbash 
#1 LSは/ dev / //可以看到差距相当大[08065470bd72 / @ルート] 
のagpgart MEM SND tty27 tty50 usbmon1 
autofsのMIDI SR0 tty28 tty51 usbmon2 
BSG mqueueを標準エラー出力tty29 tty52 VCSの
のbtrfs-制御ネットSTDIN tty3 tty53 VCS1 
バスnetwork_latency標準出力tty30 tty54 VCS2
コンソールnetwork_throughput TTY tty31 tty55 VCS3 
FB0生tty16 tty4 tty63 vcsa5
コアヌルtty0のtty32 tty56 vcs4 
CPUのNVRAM TTY1 tty33 tty57 vcs5 
cpu_dma_latency oldmem tty10 tty34 tty58 vcs6 
クラッシュポートtty11 tty35 tty59 vcsa 
DM-0 PPP tty12 tty36 tty6 vcsa1 
DM-1 ptmx tty13 tty37 tty60 vcsa2 
dmmidi PTS tty14 tty38 tty61 vcsa3 
DRIランダムtty15のtty39 tty62 vcsa4 
フルSDA tty18 tty41 tty8 vfio
FD rtc0 tty17 tty40 tty7 vcsa6 
ヒューズSDA1 tty19 tty42 tty9 vga_arbiter 
hidraw0 SDA2 tty2 tty43 ttyS0のvhci 
HPET SDB tty20 tty44 ttyS1のバーチャルホストネット
hwrng SDB1 tty21 tty45 ttyS2がVMCI 
入力SG0 tty22 tty46 ttyS3 VSOCK 
kmsg SG1 tty23 tty47 uhidゼロ
ループ制御SG2のtty24のtty48 uinput 
マッパーSHM tty25 tty49 urandomの
mcelogスナップショットtty26 tty5というusbmon0

  

参考:https://www.cnblogs.com/zuxing/articles/8780661.html

おすすめ

転載: www.cnblogs.com/diantong/p/11535696.html