docker部分常見配置

對於centos 7系統而言
1.修改docker鏡像存放位置
須要修改/usr/lib/systemd/system/docker.service文件中爲
ExecStart = '.... --graph /path/to/dir'   添加 --grahp /path/to/dir
注意:/path/to/dir目錄是不存在的,  權限爲  drwx-----x
須要重啓docker
systemctl restart docker
不建議本身建立,可經過建立軟鏈接的方式linux

自動化實現修改:
sed -ie 's@ExecStart=/usr/bin/docker-current daemon@ExecStart=/usr/bin/docker-current daemon --graph /data/docker@' /usr/lib/systemd/system/docker.servicegit

2.修改docker以監聽端口的方式啓動
須要修改/usr/lib/systemd/system/docker.service文件中
ExecStart 中的內容
ExecStart='... -H tcp://0.0.0.0:2375'
修改後須要重啓docker
systemctl restart dockergithub

自動化實現修改:
sed -ie 's@ExecStart=/usr/bin/docker-current daemon@ExecStart=/usr/bin/docker-current daemon -H tcp://0.0.0.0:2375@' /usr/lib/systemd/system/docker.servicedocker


3.centos7宿主機上創建Docker橋接物理網絡過程
須要安裝bridge-utils包
宿主機網卡信息:
name:ens0
IP:192.168.184.99
GATEWAY:192.168.184.2
DNS:192.168.184.2vim

1. 中止docker服務
~#:service docker stopcentos

2.刪除docker0網卡
~#:ip link set dev docker0 down
~#:brctl delbr docker0bash

3.新建橋接物理網絡虛擬網卡br0
~#:brctl addbr br0
~#:ip link set dev br0 up
~#:ip addr add 192.168.184.100/24 dev br0 #爲br0分配物理網絡中的ip地址
~#:ip addr del 192.168.184.99/24 dev ens0 #將宿主機網卡的IP清空
~#:brctl addif br0 ens0 #將宿主機網卡掛到br0上
~#:ip route del default #刪除原路由
~#:ip route add default via 192.168.184.2 dev br0 #爲br0設置路由網絡

4.設置docker服務啓動參數
這裏要注意的是,不一樣的linux操做系統docker的配置文件所在不一樣
centos 在/etc/sysconfig/docker
其餘操做系統請前往下面的網址
https://docs.docker.com/installation/#installationtcp

~#:vim /etc/sysconfig/docker #在OPTIONS='--selinux-enabled'這行中修改成OPTIONS='--selinux-enabled -b=br0'即讓docker服務啓動時使用br0網卡進行橋接centos7

5.啓動docker服務
~#:service docker start

6.安裝pipework
~#:git clone https://github.com/jpetazzo/pipework
~#:cp ~/pipework/pipework /usr/local/bin/

7.啓動一個手動設置網絡的容器
這裏最好不要讓docker自動獲取ip,下次啓動會有變化並且自動獲取的ip可能會和物理網段中的ip衝突
~#:docker run -itd --net=none --name=test centos7 /bin/bash

9.爲test容器設置一個與橋接物理網絡同地址段的ip@網關
~#:pipework br0 test 192.168.184.11/24@192.168.184.2

10.進入容器查看ip ~#:docker attach test

相關文章
相關標籤/搜索