国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

docker之點到點的容器網絡的配置

2024-09-01 13:54:16
字體:
來源:轉載
供稿:網友

一、搭建容器之間的網絡

1. 查看目前的網絡環境

[root@liuxin-test01 ~]# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00  inet 127.0.0.1/8 scope host lo    valid_lft forever preferred_lft forever  inet6 ::1/128 scope host    valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000  link/ether 00:0c:29:ca:41:84 brd ff:ff:ff:ff:ff:ff  inet 192.168.8.192/24 brd 192.168.8.255 scope global eth0    valid_lft forever preferred_lft forever  inet6 fe80::20c:29ff:feca:4184/64 scope link    valid_lft forever preferred_lft forever3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000  link/ether 00:0c:29:ca:41:8e brd ff:ff:ff:ff:ff:ff4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN  link/ether 02:42:a3:f4:2f:40 brd ff:ff:ff:ff:ff:ff  inet 172.17.0.1/16 scope global docker0    valid_lft forever preferred_lft forever  inet6 fe80::42:a3ff:fef4:2f40/64 scope link    valid_lft forever preferred_lft forever

2.創建兩個無網絡的容器

--rm 參數講解一下:

在Docker容器退出時,默認容器內部的文件系統仍然被保留,以方便調試并保留用戶數據。

但是,對于foreground容器,由于其只是在開發調試過程中短期運行,其用戶數據并無保留的必要,因而可以在容器啟動時設置--rm選項,這樣在容器退出時就能夠自動清理容器內部的文件系統。

  1. --net=none 無網絡環境
  2. --net=bridge 默認的參數,通過網橋(docker0)來設置容器的網絡。也可以通過DOCKER_OPTS選項的-b參數來指定默認網橋
  3. --net=host 共享主機的網絡環境,不推薦這么設置
  4. --net=container 兩個容器共享IP地址和端口號等網絡資源

下面兩個容器是在兩個終端中創建的

[root@liuxin-test01 ~]# docker run --rm -it --net=none --name='centos01' centos:7.4.1708[root@f64cdc7ffff1 /]#
[root@liuxin-test01 ~]# docker run --rm -it --net=none --name='centos02' centos:7.4.1708[root@cd4df383b68e /]#

3. 查看這兩個容器的進程ID

[root@liuxin-test01 ~]# docker inspect -f '{{.State.Pid}}' f6421682[root@liuxin-test01 ~]# docker inspect -f '{{.State.Pid}}' cd421832

4. 為這兩個容器創建虛擬的網絡空間

[root@liuxin-test01 ~]# mkdir -p /var/run/netns[root@liuxin-test01 ~]# ln -s /proc/21682/ns/net /var/run/netns/21682[root@liuxin-test01 ~]# ln -s /proc/21832/ns/net /var/run/netns/21832[root@liuxin-test01 ~]#

5. 創建一對veth,兩端命名為A、B

veth 是虛擬的以太設備,類似于網卡設備。這個是linux容器技術引進的,要求必須成對出現

[root@liuxin-test01 ~]# ip link add A type veth peer name B[root@liuxin-test01 ~]# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00  inet 127.0.0.1/8 scope host lo    valid_lft forever preferred_lft forever  inet6 ::1/128 scope host    valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000  link/ether 00:0c:29:ca:41:84 brd ff:ff:ff:ff:ff:ff  inet 192.168.8.192/24 brd 192.168.8.255 scope global eth0    valid_lft forever preferred_lft forever  inet6 fe80::20c:29ff:feca:4184/64 scope link    valid_lft forever preferred_lft forever3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000  link/ether 00:0c:29:ca:41:8e brd ff:ff:ff:ff:ff:ff4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN  link/ether 02:42:a3:f4:2f:40 brd ff:ff:ff:ff:ff:ff  inet 172.17.0.1/16 scope global docker0    valid_lft forever preferred_lft forever  inet6 fe80::42:a3ff:fef4:2f40/64 scope link    valid_lft forever preferred_lft forever157: B@A: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN qlen 1000  link/ether de:f7:3b:24:a5:0e brd ff:ff:ff:ff:ff:ff158: A@B: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN qlen 1000  link/ether 9a:65:96:de:04:90 brd ff:ff:ff:ff:ff:ff

6. 將兩端分別放到兩個容器中

我們可以看到,加入到容器之后,再次執行ip a 已經看不到這兩個設備了

[root@liuxin-test01 ~]# ip link set A netns 21682[root@liuxin-test01 ~]# ip link set B netns 21832[root@liuxin-test01 ~]# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00  inet 127.0.0.1/8 scope host lo    valid_lft forever preferred_lft forever  inet6 ::1/128 scope host    valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000  link/ether 00:0c:29:ca:41:84 brd ff:ff:ff:ff:ff:ff  inet 192.168.8.192/24 brd 192.168.8.255 scope global eth0    valid_lft forever preferred_lft forever  inet6 fe80::20c:29ff:feca:4184/64 scope link    valid_lft forever preferred_lft forever3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000  link/ether 00:0c:29:ca:41:8e brd ff:ff:ff:ff:ff:ff4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN  link/ether 02:42:a3:f4:2f:40 brd ff:ff:ff:ff:ff:ff  inet 172.17.0.1/16 scope global docker0    valid_lft forever preferred_lft forever  inet6 fe80::42:a3ff:fef4:2f40/64 scope link    valid_lft forever preferred_lft forever

7. 設置兩個容器網絡空間的ip

[root@liuxin-test01 ~]# ip netns exec 21682 ip addr add 192.168.99.1/32 dev A[root@liuxin-test01 ~]# ip netns exec 21832 ip addr add 192.168.99.2/32 dev B

8. 啟動兩個容器的網絡

[root@liuxin-test01 ~]# ip netns exec 21682 ip link set A up[root@liuxin-test01 ~]# ip netns exec 21832 ip link set B up

9. 給這兩個容器設置一下網關

[root@liuxin-test01 ~]# ip netns exec 21682 ip route add 192.168.99.2/32 dev A[root@liuxin-test01 ~]# ip netns exec 21832 ip route add 192.168.99.1/32 dev B

10. 測試

[root@f64cdc7ffff1 /]# ping 192.168.99.2PING 192.168.99.2 (192.168.99.2) 56(84) bytes of data.64 bytes from 192.168.99.2: icmp_seq=1 ttl=64 time=0.095 ms
[root@cd4df383b68e /]# ping 192.168.99.1PING 192.168.99.1 (192.168.99.1) 56(84) bytes of data.64 bytes from 192.168.99.1: icmp_seq=1 ttl=64 time=0.057 ms

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 呼和浩特市| 文昌市| 双流县| 滦平县| 墨竹工卡县| 永州市| 沈阳市| 兴和县| 湘乡市| 加查县| 白山市| 洱源县| 西乌| 彩票| 遵化市| 民乐县| 雷波县| 独山县| 张家界市| 盐源县| 建平县| 长白| 南陵县| 陕西省| 会宁县| 新巴尔虎左旗| 宜州市| 海原县| 塘沽区| 桦甸市| 新晃| 望城县| 济阳县| 乐平市| 闽清县| 德惠市| 建湖县| 建始县| 简阳市| 和顺县| 武定县|