Docker网络的示例分析
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章将为大家详细讲解有关Docker网络的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Docker networks基于namespace的netwo
千家信息网最后更新 2025年02月04日Docker网络的示例分析
这篇文章将为大家详细讲解有关Docker网络的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Docker networks
基于namespace的network网络隔离
一个样例
# 创建两个network namespaceip netns add ns1ip netns add ns2# 创建成对的网卡设备sudo ip link add veth-a type veth peer name veth-b# 将网卡分别放在两个namespace中sudo ip link set veth-a netns ns1sudo ip link set veth-b netns ns2# 启用两个网卡sudo ip netns exec ns1 ip link set dev veth-a upsudo ip netns exec ns2 ip link set dev veth-b up# 为两个网卡分配ip地址信息sudo ip netns exec ns1 ip addr add 10.0.0.1/24 dev veth-asudo ip netns exec ns2 ip addr add 10.0.0.2/24 dev veth-b#验证网络连通性在ns1中执行ping veth-bsudo ip netns exec ns1 ping 10.0.0.2
overlay network
consul
docker run -d -p 8500:8500 --restart=always --name=consul progrium/consul -server -bootstrap -advertise=172.17.0.200# nohup consul agent -server -bootstrap -ui -data-dir /var/lib/consul -client=10.0.0.2 -bind=10.0.0.2 &> /var/log/consul.log &
其他节点docker.service configure
systemctl status docker.service # 查看docker.service在什么位置ExecStart=/usr/bin/dockerd -H fd:// --cluster-store=consul://172.17.0.200:8500 --cluster-advertise=ens33:2376 # ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 --cluster-store consul://10.0.0.2:8500 --cluster-advertise 10.0.0.2:2375# ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 --cluster-store consul://10.0.0.2:8500 --cluster-advertise 10.0.0.3:2375
在consul中查看服务是否被发现
url:http://172.17.0.200:8500/ui/#/dc1/kv/docker/nodes/
创建overlay网络
docker network create -d overlay ov1root@node1:~# docker network lsNETWORK ID NAME DRIVER SCOPEba720f1ef854 bridge bridge local5b69a097a085 host host local9c19e28d7789 none null localbaa622c89664 ov1 overlay global *root@master:~# docker network ls |grep ov1baa622c89664 ov1 overlay global *root@node2:/etc/apt# docker network ls | grep ov1baa622c89664 ov1 overlay global *# check logs[node2]docker run -itd --name busybox01 --network=ov1 busyboxdocker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' f454d47dd873 ##查找ip# errordocker: Error response from daemon: endpoint with name busybox01 already exists in network ov1.root@node1:~# docker run -itd --name busybox02 --network ov1 busybox d7f1a2c5d81c33513269ba99306b6f5cb7f64e02ab7583552f8fe71aab719952root@node1:~# docker exec busybox02 ping -c 4 busybox01PING busybox01 (10.0.0.2): 56 data bytes64 bytes from 10.0.0.2: seq=0 ttl=64 time=0.760 ms64 bytes from 10.0.0.2: seq=1 ttl=64 time=0.521 ms
check netns
ln -s /var/run/docker/netns /var/run/netnsip netns list
重启
如果docker host被关机了,重启后没有原先创建的overlay网络,此时就要查看docker host上的consul/(k/v)服务是否停掉了;
macvlan
打开网卡的混杂模式
root@node2:~# ip link show ens332: ens33:mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 00:0c:29:27:f1:72 brd ff:ff:ff:ff:ff:ffip link set ens33 promisc onroot@node2:~# ip link show ens332: ens33: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 00:0c:29:27:f1:72 brd ff:ff:ff:ff:ff:ffvmware/virtualbox也需要打开混杂模式
create macvlan
root@node1:~# docker network create -d macvlan --subnet=172.16.0.0/24 --gateway=172.16.0.1 -o parent=ens33 macnet01 #在node2上同样运行此命令root@node1:~# docker network ls | grep macnet010f2f883adb06 macnet01 macvlan localdocker run -itd --name busybox04 --ip 172.16.0.3 --network macnet01 busyboxroot@node1:~# docker exec busybox04 ping -c 4 172.17.0.4root@node2:~# docker exec busybox05 ping -c 4 172.17.0.3
docker network namespace的开源管理工具
netenter
pipework网络
docker容器网络配置工具
pipework
Docker高级网络实践
linux network namespace(命令行下)
创建一个network namespace
显示network namespace
删除network namespace
在network namespace中执行shell命令
关于"Docker网络的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
网络
网卡
两个
命令
篇文章
示例
分析
工具
更多
模式
服务
混杂
不错
实用
高级
一个样
位置
信息
内容
地址
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
车站网络安全应急预案
搭建个人服务器合法
阿里云云服务器项目支持ipv6
网络安全宣传周心得体会800字
代理服务器连不上
亿联网络技术股份有限地址
海蓝科技互联网公司
阿里云服务器能试用吗
涉及个人网络安全法规
数据库设置字段唯一性约束
高斯数据库设置显示模式
现代网络技术处于什么时代
网络安全入园企业
sql2008 数据库对比
互联网科技公司做账
贵州5星级软件开发公司
软件开发语音
湖州专业网络安全准入控制哪家好
跟踪器软件开发
嘉兴app软件开发要求
远程服务器管理是什么
网络安全手抄报模板内容资料
洪山订制软件开发多少钱
华为服务器调试教程
sql数据库如何导入兼容性
如何更改服务器的管理地址
未转变者服务器油桶
t440服务器怎么使用
莆田市西斯网络技术有限公司
杭州企业软件开发哪家实惠