咱們在使用docker run建立Docker容器時,能夠用--net選項指定容器的網絡模式,Docker有如下4種網絡模式:git
host模式,使用--net=host指定。github
container模式,使用--net=container:NAME_or_ID指定。docker
none模式,使用--net=none指定。centos
bridge模式,使用--net=bridge指定,默認設置。bash
默認選擇bridge的狀況下,容器啓動後會經過DHCP獲取一個地址,這可能不是咱們想要的,本文介紹在centos7 docker環境下使用pipework腳本對容器分配固定IP。網絡
# brctl show # docker run -idt --net=none --name test1 registry.fjhb.cn/centos6 /bin/bash # brctl show # docker-enter test1 # ip a
# wget https://github.com/jpetazzo/pipework/archive/master.zip # unzip pipework-master.zip # cp pipework-master/pipework /usr/local/bin/ # chmod +x /usr/local/bin/pipework # pipework kbr0 test1 172.17.1.3/24@172.17.1.1 # brctl show # docker-enter test1 # ip a # route -n
Pipework有個缺陷,容器重啓後IP設置會自動消失,須要從新設置。ide