麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 基礎常識 > 正文

為Docker設置固定IP及使用Weave管理工具的方法

2020-10-21 21:51:18
字體:
來源:轉載
供稿:網友
為docker配置固定ip
首先,配置一個用于創建container interface的網橋,可以使用ovs,也可以使用Linux bridge,以Linux bridge為例:

復制代碼
代碼如下:

br_name=docker
brctl addbr $br_name
ip addr add 192.168.33.2/24 dev $br_name
ip addr del 192.168.33.2/24 dev em1
ip link set $br_name up
brctl addif $br_name eth0

接著,可以啟動容器了,注意用--net=none方式啟動:

復制代碼
代碼如下:

# start new container
hostname='docker.test.com'
cid=$(docker run -d -i -h $hostname --net=none -t centos)
pid=$(docker inspect -f '{{.State.Pid}}' $cid)

下面,為該容器配置網絡namespace,并設置固定ip:

復制代碼
代碼如下:

# set up netns
mkdir -p /var/run/netns
ln -s /proc/$pid/ns/net /var/run/netns/$pid
# set up bridge
ip link add q$pid type veth peer name r$pid
brctl addif $br_name q$pid
ip link set q$pid up
# set up docker interface
fixed_ip='192.168.33.3/24'
gateway='192.168.33.1'
ip link set r$pid netns $pid
ip netns exec $pid ip link set dev r$pid name eth0
ip netns exec $pid ip link set eth0 up
ip netns exec $pid ip addr add $fixed_ip dev eth0
ip netns exec $pid ip route add default via 192.168.33.1

這樣,容器的網絡就配置好了,如果容器內部開啟了sshd服務,通過192.168.33.3就可以直接ssh連接到容器,非常方便。上面的步驟比較長,可以借助pipework來為容器設置固定ip(除了設置IP,還封裝了配置網關、macvlan、vlan、dhcp等功能):

復制代碼
代碼如下:

pipework docker0 be8365e3b2834 10.88.88.8/24

那么,當容器需要刪除的時候,怎么清理網絡呢,其實也很簡單:

復制代碼
代碼如下:

# stop and delete container
docker stop $cid
docker rm $cid
# delete docker's net namespace (also delete veth pair)
ip netns delete $pid




使用weave管理docker網絡

weave簡單使用

復制代碼
代碼如下:

sudo wget -O /usr/local/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave


復制代碼
代碼如下:

sudo chmod a+x /usr/local/bin/weave

啟動weave路由器,這個路由器其實也是在docker中啟動的:

復制代碼
代碼如下:

[root@h-46mow360 ~]# weave launch

Unable to find image 'zettio/weave' locally
3b3a3db2c186fccb5203dcc269b3febbbbf126591a7ebd8117a8a5250683749f

復制代碼
代碼如下:

[root@h-46mow360 ~]# brctl show

bridge name bridge id       STP enabled interfaces
docker0     8000.56847afe9799   no      veth801050a
weave       8000.7afc2a03325e   no      vethwepl2146

復制代碼
代碼如下:

[root@h-46mow360 ~]# docker ps

CONTAINER ID        IMAGE                           COMMAND                CREATED              STATUS              PORTS                                            NAMES
3b3a3db2c186        zettio/weave:git-a34e214201cb   "/home/weave/weaver    About a minute ago   Up About a minute   0.0.0.0:6783->6783/tcp, 0.0.0.0:6783->6783/udp   weave
在兩臺物理機上分別啟動一個容器:

復制代碼
代碼如下:

c1=$(weave run 10.0.3.3/24 -t -i -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v /tmp/$(mktemp -d):/run systemd:systemd /usr/lib/systemd/systemd)
c2=$(weave run 10.0.3.5/24 -t -i -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v /tmp/$(mktemp -d):/run systemd:systemd /usr/lib/systemd/systemd)

這個時候,兩個容器之間是不通的,需要在兩臺weave的路由器之間建立連接:( if there is a firewall between $HOST1 and $HOST2, you must open port 6783 for TCP and UDP)

復制代碼
代碼如下:
weave connect 10.33.0.9

這樣,兩臺容器之間通了:

復制代碼
代碼如下:

# nsenter --mount --uts --ipc --net --pid --target $(docker inspect --format "{{.State.Pid}}" "$c2")


復制代碼
代碼如下:

-bash-4.2# ping -c 3 10.0.3.3

PING 10.0.3.3 (10.0.3.3) 56(84) bytes of data.
64 bytes from 10.0.3.3: icmp_seq=1 ttl=64 time=2.34 ms
64 bytes from 10.0.3.3: icmp_seq=2 ttl=64 time=1.52 ms
64 bytes from 10.0.3.3: icmp_seq=3 ttl=64 time=1.13 ms

--- 10.0.3.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 1.131/1.667/2.345/0.505 ms
 
weave其他特性
 
•應用隔離:不同子網容器之間默認隔離的,即便它們位于同一臺物理機上也相互不通;不同物理機之間的容器默認也是隔離的
 •物理機之間容器互通:weave connect $OTHER_HOST
 •動態添加網絡:對于不是通過weave啟動的容器,可以通過weave attach 10.0.1.1/24 $id來添加網絡(detach刪除網絡)
 •安全性:可以通過weave launch -password wEaVe設置一個密碼用于weave peers之間加密通信
 •與宿主機網絡通信:weave expose 10.0.1.102/24,這個IP會配在weave網橋上
 •查看weave路由狀態:weave ps
 •通過NAT實現外網訪問docker容器
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 意大利av在线 | 成人男女啪啪免费观看网站四虎 | 国产精品美女久久久久久不卡 | 精品国产专区 | 欧美一级不卡视频 | 日韩黄色一级视频 | 国产在线久 | 亚洲骚综合 | 黄色午夜剧场 | 国产精品午夜性视频 | 国产一级二级在线播放 | 亚洲国产精品一区二区久久 | 色中色在线播放 | 91成人免费视频 | 精品无码一区在线观看 | 日韩欧美电影在线观看 | 久久亚洲线观看视频 | 久久精品视频12 | 一级片久久免费 | 日韩色视频在线观看 | 在线日韩亚洲 | 成人在线视频精品 | 黄网站在线观 | 色婷婷久久一区二区 | 香蕉久久久久久 | 亚洲视屏在线观看 | 亚洲网站在线 | 国产精品一区二区三区在线看 | 欧美成人免费一级 | 久久久久九九九女人毛片 | 亚洲码无人客一区二区三区 | 欧美成人一区二区三区 | 性毛片视频| av久草 | 91成人在线网站 | 国产xxxxx在线观看 | 亚洲午夜影院在线观看 | 欧美一区二区三区久久精品视 | 免费观看视频在线观看 | 国产做爰全免费的视频黑人 | 男女无遮挡羞羞视频 |