首页 游戏 软件 资讯 排行榜 专题
首页
系统平台
在Docker的容器之间设置网络设置网络通信的方法

在Docker的容器之间设置网络设置网络通信的方法

热心网友
11
转载
2026-04-22

你也许已经知道了,Docker 容器技术是现有的成熟虚拟化技术的一个替代方案

如今,Docker容器技术早已不是新鲜概念,它正逐步成为传统虚拟化方案的一个高效替代品。越来越多的企业将其应用于快速环境部署、简化基础设施配置以及实现多客户环境隔离等场景。当你真的打算在生产环境中用Docker容器来部署应用时,很可能会面临一个典型的复杂场景:需要启动多个容器,共同构成一套多层应用系统——比如,有的容器负责负载均衡,有的跑着LAMP栈,还有的专管数据库或用户界面。

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

于是,一个现实的问题就摆在了面前:当你有不止一台宿主机,并且无法预先确定容器会在哪台机器上创建时,如何保证这些分散在各处的容器能够顺畅地互相通信?

容器联网技术,有没有既可靠又省心的选择?答案是肯定的。在开源世界里,Wea ve算得上是个中翘楚。它能帮你省去大量手动配置的烦恼,用过之后你大概会感慨:早知道就用它了。

所以,这篇教程的核心,就是带你一步步掌握“如何使用Wea ve为跨主机的Docker容器搭建网络”。

Wea ve 是如何工作的

在Docker的容器之间设置网络设置网络通信的方法

先来捋清楚Wea ve的工作逻辑。它的核心,是创建一个由多个“对等节点”(peer)组成的虚拟网络。每个节点,其实就是一个运行在宿主机上的“Wea ve路由器”容器。这些路由器分布在不同的机器上,共同织成一张网。

这张对等网络内部,节点之间会通过TCP连接来同步拓扑信息,同时建立UDP连接,专用于容器间的实际数据通信。每个Wea ve路由器还会通过网桥(bridge)与本地宿主机上的其他Docker容器相连。关键的一步来了:当分属两台不同主机的两个容器想要“对话”时,发送方宿主机的Wea ve路由器会通过网桥截获数据包,然后用UDP协议将其封装起来,直接“快递”给接收方宿主机的Wea ve路由器。

更巧妙的是,每个Wea ve路由器会持续学习并刷新整个网络的拓扑,有点像传统交换机学习MAC地址的过程。它能知道哪个容器在哪,从而智能地决定数据包的下一跳该送往何处。只要两台宿主机都连接到了Wea ve网络中的同一个路由器(直接或间接),它们上面的容器就能互通。此外,Wea ve还支持使用公钥加密技术,为TCP和UDP数据包披上“盔甲”,确保通信安全。

准备工作

动手之前,你得确保所有计划加入的宿主机都已经装好了Docker环境。如果还没装,可以参考对应教程,在Ubuntu或者CentOS/Fedora系统上进行安装。

Docker就绪后,就可以通过下面几条命令来安装Wea ve了:

复制代码

代码如下:$ wget https://github.com/zettio/wea ve/releases/download/latest_release/wea ve

$ chmod a+x wea ve

$ sudo cp wea ve /usr/local/bin

注意,需要确保系统的PATH环境变量包含`/usr/local/bin`这个路径。通常,你可以在`/etc/profile`文件末尾添加一行(要使改动立即生效,记得执行一下`source /etc/profile`这个命令):

复制代码

代码如下: export PATH="$PATH:/usr/local/bin"

以上步骤需要在每一台计划加入Wea ve网络的宿主机上重复执行。

另外有个小细节:Wea ve会同时使用TCP和UDP的6783端口。如果系统防火墙是开启状态,请务必确保这两个端口是放行的。

在每台宿主机上启动 Wea ve 路由器

想让不同主机上的容器互通,第一步就是在每台机器上激活Wea ve路由器,把它们“邀请”进同一个虚拟网络。

从第一台宿主机开始。运行下面这条命令,系统会自动创建并启动一个Wea ve路由器容器(没错,这个路由器本身也是一个容器):

复制代码

代码如下: $ sudo wea ve launch

首次执行时,它会从网络下载Wea ve镜像,这可能需要一点时间。下载完成后,容器便会自动运行。成功启动后,终端会显示出这个路由器的ID号。

想查看它的状态?用这个命令:

复制代码

代码如下: $ sudo wea ve status

在Docker的容器之间设置网络设置网络通信的方法

好了,第一个Wea ve路由器已经就位。此时,整个对等网络里只有它一个成员。

当然,用熟悉的Docker命令也能看到它:

复制代码

代码如下:$ docker ps

在Docker的容器之间设置网络设置网络通信的方法

接下来配置第二台宿主机,步骤稍有不同。启动这台的Wea ve路由器时,需要指定第一台宿主机的IP地址,把它“介绍”进网络:

复制代码

代码如下:$ sudo wea ve launch

这时再查看路由器状态,你就会发现成员列表里已经有了两个peer:当前主机和第一台主机。

在Docker的容器之间设置网络设置网络通信的方法

随着更多路由器的加入,这个列表会越来越长。添加新节点时,请注意是指定网络中“前一台”宿主机的IP地址,而不一定是“第一台”,整个网络会以链状或网状的形态扩展。

至此,一个跨越不同宿主机的Wea ve网络就已经搭建完成了。

把不同宿主机上的容器互联起来

网络骨架有了,接下来就是在各个宿主机上启动Docker容器,并把它们接入这个虚拟网络。

假设我们规划一个私有网络`10.0.0.0/24`来连接所有容器,并为它们分配IP地址。

这里有个重要区别:如果你想创建一个能加入Wea ve网络的容器,就需要使用`wea ve run`命令,而不是直接的`docker run`。因为`wea ve run`会在后台调用Docker创建容器,并自动完成复杂的网络配置和接入。

例如,在宿主机hostA上,用下面的命令创建一个Ubuntu容器,将它放入`10.0.0.0/24`网络,并指定IP为`10.0.0.1`:

复制代码

代码如下: hostA:~$ sudo wea ve run 10.0.0.1/24 -t -i ubuntu

命令执行成功后,终端会返回容器的ID。你可以用这个ID附着到容器控制台:

复制代码

代码如下:hostA:~$ docker attach

接着,在宿主机hostB上,如法炮制创建另一个Ubuntu容器,分配IP地址`10.0.0.2`:

复制代码

代码如下:hostB:~$ sudo wea ve run 10.0.0.2/24 -t -i ubuntu

同样地,附着到它的控制台:

复制代码

代码如下:hostB:~$ docker attach

现在,神奇的事情发生了。分别在这两个容器的控制台里尝试互ping,你会发现它们已经可以畅通无阻地通信了。

在Docker的容器之间设置网络设置网络通信的方法

如果检查一下容器的网络配置,你会看到一块名为`ethwe`的网卡,上面正是你刚才分配的IP地址(例如`10.0.0.1`和`10.0.0.2`)。

在Docker的容器之间设置网络设置网络通信的方法

Wea ve 的其他高级用法

除了基础联网,Wea ve还提供了一些相当巧妙的高级特性,这里简单介绍一下。

应用分离

利用Wea ve,你可以创建多个彼此隔离的虚拟网络,将不同的应用群组分开。比如,可以为一组容器创建`10.0.0.0/24`网络,同时为另一组容器创建`10.10.0.0/24`网络,Wea ve会自动维护这些网络间的隔离。更灵活的是,你甚至可以在不重启容器的情况下,将它从一个网络“热迁移”到另一个网络。来看个具体操作:

首先,启动一个容器,让它运行在`10.0.0.0/24`网络上:

复制代码

代码如下:$ sudo wea ve run 10.0.0.2/24 -t -i ubuntu

然后,将它从当前网络分离:

复制代码

代码如下:$ sudo wea ve detach 10.0.0.2/24

最后,再将它附接到新的`10.10.0.0/24`网络:

复制代码

代码如下:$ sudo wea ve attach 10.10.0.2/24

在Docker的容器之间设置网络设置网络通信的方法

现在,这个容器就能够与`10.10.0.0/24`网络中的其他成员通信了。这在容器创建之初网络环境尚不明确时,显得格外有用。

将 wea ve 网络与宿主机网络整合起来

有些场景下,你可能希望虚拟网络中的容器能够访问物理主机网络,或者反过来,宿主机需要直接访问容器。Wea ve考虑到了这点,允许虚拟网络与宿主机网络进行整合。

举个例子,在宿主机hostA上,容器运行在`10.0.0.0/24`网络中。执行以下命令:

复制代码

代码如下: hostA:~$ sudo wea ve expose 10.0.0.100/24

这个命令会将IP地址`10.0.0.100`分配给宿主机hostA,相当于把hostA本身也变成了`10.0.0.0/24`网络上的一个节点。当然,选择的IP地址不能与已有的容器冲突。

如此一来,hostA就能够直接访问`10.0.0.0/24`网络中的所有容器了,无论这些容器是否运行在它自己身上。这个设计,确实巧妙。

总结

看到这里,你应该能体会到,Wea ve是一款功能强大且实用的Docker网络配置工具。本篇教程所介绍的,仅仅是它能力的冰山一角。如果你有兴趣继续深入,不妨探索一下它的其他特性:例如在多云(multi-cloud)环境下很有用的“多跳路由”功能;能够实现故障容错的“动态重路由”技术;或者它内置的分布式DNS服务,后者允许你直接用自定义名称来访问容器,非常方便。

来源:https://www.jb51.net/os/other/362737.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

在Docker的容器之间设置网络设置网络通信的方法
系统平台
在Docker的容器之间设置网络设置网络通信的方法

你也许已经知道了,Docker 容器技术是现有的成熟虚拟化技术的一个替代方案 如今,Docker容器技术早已不是新鲜概念,它正逐步成为传统虚拟化方案的一个高效替代品。越来越多的企业将其应用于快速环境部署、简化基础设施配置以及实现多客户环境隔离等场景。当你真的打算在生产环境中用Docker容器来部署应

热心网友
04.22
1000Gbps的速度没意义 6G网络回归现实:比5G-A网速还低
科技数码
1000Gbps的速度没意义 6G网络回归现实:比5G-A网速还低

5G网络商用五六年了,再过几年就要到6G了,此前大家对6G的期待很高,网速要达到5G的10-100倍,1000Gbps(1Tbps)的时代就要来了。 然而,现实可能要给这份期待降降温了。6G标准尚未最终拍板,但目前的讨论风向,已经透露出一个清晰的信号:回归现实,告别那些虚无缥缈的超级指标。中国工程院

热心网友
04.22
网络安全是什么?学习网络安全需要多少钱?
网络安全
网络安全是什么?学习网络安全需要多少钱?

网络安全是什么? 在当今数字化时代,网络安全的重要性已不言而喻。无论是企业运营还是个人生活,一旦忽视安全防护,都可能面临数据泄露、财产损失乃至声誉受损的风险。正因如此,市场对专业网络安全人才的需求日益迫切,学习网络安全技术也成为众多从业者提升竞争力的关键。那么,网络安全究竟涵盖哪些内容?参加系统性的

热心网友
04.19
论网络安全
网络安全
论网络安全

网络安全:构筑数字世界的信任基石 当您思考网络安全时,脑海中会浮现怎样的画面?是影视作品中黑客交锋的炫目场景,还是现实世界里数据泄露的警示新闻?实际上,它的内涵远比这些表象更为深远。网络安全,本质上是一套旨在全面保障计算机网络系统免受非法入侵、恶意攻击、服务中断及信息窃取的综合防护体系与技术实践。它

热心网友
04.19
ISO21434 组织网络安全管理(二)
网络安全
ISO21434 组织网络安全管理(二)

一、概述 构建坚不可摧的网络安全防线,绝非依赖单一产品或技术即可实现。其根本在于,组织必须首先构建一套系统化的治理框架,并同步培育深入人心的网络安全文化。具体而言,这涵盖了持续性的全员安全意识教育、关键岗位的专业能力建设,以及驱动体系持续优化的闭环改进机制。这些工作的有效执行,通常需要依托于量身定制

热心网友
04.19

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

腾讯:QQ 将全面接入微信小程序,建议开发者尽快迁移降低维护成本
手机教程
腾讯:QQ 将全面接入微信小程序,建议开发者尽快迁移降低维护成本

腾讯生态整合新动向:QQ全面接入微信小程序 7月1日,腾讯QQ小程序开发者平台发布了一项重要更新。核心内容是,为了帮助开发者降低双端开发与维护成本,QQ将全面接入微信小程序体系。这意味着,未来用户可以直接在QQ内搜索并打开微信小程序。 对于现有的存量QQ小程序,此次调整并未“一刀切”。它们目前仍可正

热心网友
04.22
天玑9600/9600 Pro双芯齐发:5GHz主频史无前例 硬刚高通骁龙8E6
手机教程
天玑9600/9600 Pro双芯齐发:5GHz主频史无前例 硬刚高通骁龙8E6

下半年芯片市场巅峰对决提前揭幕 今年下半年,全球芯片市场的战火将空前炽热。两位重量级选手——联发科与高通,已经准备好亮出各自的王牌。天玑9600系列与骁龙8E6系列,这两大迭代旗舰平台的正面交锋,注定会成为今年科技行业最值得关注的戏码。 双芯策略:精准卡位旗舰市场 有意思的是,联发科这次玩了个新花样

热心网友
04.22
微信好友申请为何能通过搜索qq号添加
手机教程
微信好友申请为何能通过搜索qq号添加

在当今数字化社交的时代,微信已成为人们日常沟通交流的重要工具。不少人都发现,微信好友申请居然可以通过搜索 qq 号来添加,这背后有着诸多有趣的原因和便利之处。 一、社交关系的延续与拓展 要知道,微信与QQ同属腾讯旗下,两者之间存在着千丝万缕的联系。很多用户的社交关系其实根植于QQ时代,那些好友列表里

热心网友
04.22
高德地图如何更改定位
手机教程
高德地图如何更改定位

高德地图如何更改定位?三种方法详解及注意事项 无论是日常通勤、外出旅行还是朋友相聚,高德地图已经成了我们依赖的“导航神器”,精准定位和路线规划是其核心功能。不过,现实场景有时会有点特殊——比如,你可能需要模拟一个位置来测试应用,或者在某个游戏中“签到”,又或者只是想和朋友开个无伤大雅的玩笑。这个时候

热心网友
04.22
巧学宝app如何绑定手机号
手机教程
巧学宝app如何绑定手机号

巧学宝App绑定手机号全程指南 在巧学宝App上完成手机号绑定,是解锁其完整功能的关键一步。这个看似简单的操作,能为你后续的学习之旅带来不少实实在在的便利。那么,该如何快速搞定呢?下面这张流程图,能帮你一眼看清完整的操作路径。 第一步:进入个人中心 首先,打开你的巧学宝App。进入主界面后,注意力可

热心网友
04.22