如何部署点到点的docker网络
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"如何部署点到点的docker网络"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"如何部署点到点的docker网络"文章能帮助大家解决问题。查看
千家信息网最后更新 2026年11月03日如何部署点到点的docker网络
这篇文章主要介绍"如何部署点到点的docker网络"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"如何部署点到点的docker网络"文章能帮助大家解决问题。
查看目前的网络环境
[root@liuxin-test01 ~]# ip a1: lo: 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: 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: eth2: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00:0c:29:ca:41:8e brd ff:ff:ff:ff:ff:ff4: docker0: 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
创建两个无网络的容器
--rm 参数讲解一下:在Docker容器退出时,默认容器内部的文件系统仍然被保留,以方便调试并保留用户数据。但是,对于foreground容器,由于其只是在开发调试过程中短期运行,其用户数据并无保留的必要,因而可以在容器启动时设置--rm选项,这样在容器退出时就能够自动清理容器内部的文件系统。--net=none 无网络环境--net=bridge 默认的参数,通过网桥(docker0)来设置容器的网络。也可以通过DOCKER_OPTS选项的-b参数来指定默认网桥--net=host 共享主机的网络环境,不推荐这么设置--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 /]#
查看这两个容器的进程ID
[root@liuxin-test01 ~]# docker inspect -f '{{.State.Pid}}' f6421682[root@liuxin-test01 ~]# docker inspect -f '{{.State.Pid}}' cd421832为这两个容器创建虚拟的网络空间
[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 ~]#
创建一对veth,两端命名为A、B
veth 是虚拟的以太设备,类似于网卡设备。这个是linux容器技术引进的,要求必须成对出现
[root@liuxin-test01 ~]# ip link add A type veth peer name B[root@liuxin-test01 ~]# ip a1: lo: 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: 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: eth2: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00:0c:29:ca:41:8e brd ff:ff:ff:ff:ff:ff4: docker0: 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: 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: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 9a:65:96:de:04:90 brd ff:ff:ff:ff:ff:ff
将两端分别放到两个容器中
我们可以看到,加入到容器之后,再次执行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: 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: 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: eth2: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00:0c:29:ca:41:8e brd ff:ff:ff:ff:ff:ff4: docker0: 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
设置两个容器网络空间的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
启动两个容器的网络
[root@liuxin-test01 ~]# ip netns exec 21682 ip link set A up[root@liuxin-test01 ~]# ip netns exec 21832 ip link set B up
给这两个容器设置一下网关
[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
测试
[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
关于"如何部署点到点的docker网络"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
容器
网络
两个
参数
环境
知识
设备
两端
数据
文件
用户
空间
系统
行业
过程
网桥
不同
实用
必要
主机
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
新华互联网科技学校
A股互联网金融科技公司
互联网科技资迅
金融科技创新监管互联网金融
没上市的科技互联网公司
互联网未来科技
宜安科技 互联网金融
西安互联网科技公司
广西拼得多互联网科技有限公司
济南华为互联网科技产业总部基地
科技互联网的估值
福建科技产业互联网发展
浙江互联网科技研学营
迪庆互联网科技招生
翼展科技 首家互联网医院
中和天地互联网科技有限公司
东营紫格互联网科技
昆明中奇联合互联网科技
陕西九四连强互联网科技有限公司
西安左小互联网科技有限公司
蓝思科技飞鸽互联网
致聘互联网科技
一五八零互联网科技
中盈科技互联网信息有限公司
智腾互联网科技有限公司
广州新华互联网科技学校电竞方面
互联网时代的科技公司
图游互联网科技
互联网风格科技公司名称
2021世界互联网领先科技成果发布