Docker容器固定IP分配

咱們在使用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

wKioL1TApH3hRJV8AAZAFA_0TlE585.jpg

# 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

wKiom1TAo-OSBhVXAAhkhRPYqaE935.jpg

Pipework有個缺陷,容器重啓後IP設置會自動消失,須要從新設置。ide

相關文章
相關標籤/搜索