详解五种Docker容器的网络形式

  • 电脑网络维修
  • 2024-11-15

Docker 网络设置了容器如何与其余容器和外部服务通讯。为了取得网络访问,容器须要是 Docker 网络的一局部。容器可以通讯的方式取决于它的网络衔接。Docker 提供了五种规范网络形式来口头外围网络性能:Bridge(桥接)、Host(主机)、Overlay(堆叠)、IPvLAN、Macvlan。

1、桥接网络

桥接网络在主机机器和容器之间构成一个虚构桥接。该网络上的容器可以相互通讯,但与未衔接到该网络的容器隔离。

每个容器都会取得一个唯一无二的 IP 地址。经过与主机的桥接衔接,这些容器还可以相互交互,与本地网络(LAN)和 Internet 互联。但是,它们不会以物理设备的方式出如今 LAN 上。

2、主机网络(Host Network)

经常使用主机网络形式的容器经常使用与主机机器相反的网络设置,而不会被隔离。它们没有独自的 IP 地址。相反,它们经常使用的任何端口都间接链接到主机网络。例如,假设容器进程经常使用端口8080,则可以经过192.168.1.101:8080(即主机的 IP 地址和端口号)访问它。

由于运行程序容器经常使用端口8080,因此不须要端口映射,由于在这种状况下,容器经常使用主机端口。咱们的数据库经常使用端口5432,因此可以经过主机的 IP 地址和5432端口启动访问。

3、堆叠网络(Overlay Network)

堆叠网络是超过多个 Docker 主机的网络。它们可以让这些主机上的容器相互通讯,而无需操作系统治理路由。

堆叠网络用于 Docker Swarm 集群。但是,假设有两个独自运转的 Docker 引擎,并且须要间接衔接它们的容器,也可以这样经常使用它们。

上图启动了简化。在实在场景中,正如容器一样,主机也会从堆叠网络失掉虚构 IP 地址,而且它们的范畴是相反的。

4、IPvLAN 网络

IPvLAN 是一种初级形式,可提供对容器的 IPv4 和 IPv6 地址启动详细控制的才干,它还可以处置第 2 层和第 3 层 VLAN 标志和路由。

假设你须要将容器服务衔接到已有物理网络,此形式会很有用。IPvLAN 网络具有自己的接口,其性能或者比基于桥接网络的网络更好。

上图显示了 IPvLAN 设置中的一切内容,包括容器,都有自己的 IP 地址,并且是网络的一局部。

5、Macvlan 网络

Macvlan 是一种更初级的选项,让容器能像网络上的物理设备一样运转。它经过为每个容器调配自己的 MAC 地址来成功这一点。

关于此类型的网络,你须要将主机的一个物理网络接口调配给虚构网络。此外,更宽泛的网络还应设置为处置来自具有少量容器的 Docker 主机的许多 MAC 地址。

6、经常使用哪种网络类型

桥接网络实用于大少数状况。这些网络上的容器可以经常使用 IP 地址和 DNS 称号相互通讯。它们还可以衔接到互联网和本地网络。

主机网络在须要间接经常使用主机的网络接口并且不须要分别容器网络时很有用。此设置使容器化的运行程序像主机网络的一局部一样运转。

堆叠网络在容器位于不同 Docker 主机上时须要间接通讯时是必需的。它们十分适宜为了提高牢靠性创立散布式运行。

在容器须要像网络上的物理设备一样运转时,Macvlan 网络很有用,例如监控网络流量。IPvLAN 网络实用于初级需求,例如对容器 IP 地址、标志和路由的特定控制。

7、创立网络

经常使用docker network create命令创立一个新网络。经过设置-d标志来指定要经常使用的驱动程序,例如桥接或主机。假设省略标志,将创立一个桥接网络。

在第一个终端窗口中运转以下命令:

docker network  testnetwork d bridge

创立的网络 ID 将显示在终端中。目前,新网络还无法经常使用,由于还没有衔接任何容器。

但是,你可以经过在docker run命令中设置--network标志将新容器衔接到网络。在第二个终端窗口中运转以下命令:

docker run it 

接上去,在第三个终端窗口中启动另一个 Ubuntu 容器,这次不经常使用--network标志:

docker run it 

如今,经常使用它们的称号在两个容器之间启动通讯:

 ping: bad address 

容器尚未参与到同一个网络中,因此它们无法间接相互通讯。

经常使用第一个终端窗口将container2衔接到网络中:

docker network  testnetwork container2

容器如今共享同一个网络,这使它们能够相互发现:

 PING container2 :   bytes bytes  : seq ttl  ms

Docker 可以在不从新启动容器的状况下自在治理网络衔接。了解了如何在创立容器后衔接容器,也可以从它们不再须要介入的网络中删除容器:

docker network disconnect testnetwork container2

假构想删除一个网络,须要先断开或中止经常使用该网络的一切 Docker 容器,而后将网络的 ID 或称号传递给network rm:

docker network rm testnetwork

总结

Docker 的网络系统为治理容器如何与其余容器、相邻容器和 Docker 主机通讯提供了多种方式。同一网络中的容器可以经常使用其称号或 IP 地址衔接。

  • 关注微信

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:https://duobeib.com/diannaowangluoweixiu/6651.html

猜你喜欢

热门标签

洗手盆如何疏浚梗塞 洗手盆为何梗塞 iPhone提价霸占4G市场等于原价8折 明码箱怎样设置明码锁 苏泊尔电饭锅保修多久 长城画龙G8253YN彩电输入指令画面变暗疑问检修 彩星彩电解除童锁方法大全 三星笔记本培修点上海 液晶显示器花屏培修视频 燃气热水器不热水要素 热水器不上班经常出现3种处置方法 无氟空调跟有氟空调有什么区别 norltz燃气热水器售后电话 大连站和大连北站哪个离周水子机场近 热水器显示屏亮显示温度不加热 铁猫牌保险箱高效开锁技巧 科技助力安保无忧 创维8R80 汽修 a1265和c3182是什么管 为什么电热水器不能即热 标致空调为什么不冷 神舟培修笔记本培修 dell1420内存更新 青岛自来水公司培修热线电话 包头美的洗衣机全国各市售后服务预定热线号码2024年修缮点降级 创维42k08rd更新 空调为什么运转异响 热水器为何会漏水 该如何处置 什么是可以自己处置的 重庆华帝售后电话 波轮洗衣机荡涤价格 鼎新热水器 留意了!不是水平疑问! 马桶产生了这5个现象 方便 极速 邢台空调移机电话上门服务 扬子空调缺点代码e4是什么疑问 宏基4736zG可以装置W11吗 奥克斯空调培修官方 为什么突然空调滴水很多 乐视s40air刷机包 未联络视的提高方向 官网培修 格力空调售后电话 皇明太阳能电话 看尚X55液晶电视进入工厂形式和软件更新方法 燃气热水器缺点代码

热门资讯

关注我们

微信公众号