首页/云/Docker 容器速查/overlay 模式:跨主机容器网络
网络与存储52 条

overlay 模式:跨主机容器网络

overlay 网络基于 VXLAN 把多台主机的容器接入同一虚拟网络,是 Swarm 集群服务间通信的基础;单机场景一般用不上。

Docker 容器速查云更新于 2026-10-13

overlay 网络是什么

overlay 网络基于隧道封装,把多台主机上的容器接入同一个虚拟网络,是集群模式下服务间通信的基础:不同主机上的容器可以直接按名称互访。单机场景一般用不到它,因为它解决的是跨主机连通问题,同时带来额外的封装开销与端口放通要求。

基本信息

用途跨主机容器之间的通信
前提条件需要先初始化集群模式
创建方式用指定 overlay 驱动的网络创建命令
附加选项允许独立容器接入该网络
依赖主机之间需放通封装使用的端口

典型使用场景

  • 集群模式下让多主机上的服务直接互访
  • 把独立容器接入集群网络,便于调试
  • 迁移期让新旧两种部署方式混跑
  • 排查跨主机的连通性问题
  • 规划多主机网络的网段与端口放通

创建与核对

创建与核对
docker swarm init                                              # 初始化集群模式
docker network create -d overlay --attachable app-overlay      # 创建可接入的 overlay 网络
docker network ls --filter driver=overlay                      # 查看 overlay 网络
docker network inspect app-overlay --format '{{.IPAM.Config}}' # 核对网段配置

特性与注意点

方面说明注意
跨主机连通不同主机上的容器可直接互访基于隧道封装,存在额外开销
前提条件需要集群模式单机创建没有意义
端口依赖主机间需放通封装端口云环境安全组容易漏放
接入选项独立容器可加入该网络方便调试与迁移期混跑
附加选项允许独立容器接入该网络,方便调试与迁移期混跑,不必把容器都改成集群服务形式。
云环境中安全组漏放封装端口,会出现节点之间时通时断的现象,排查跨主机问题时先确认这部分。
创建网络前先规划网段,避免与办公网、虚拟专用网以及现有的其他网络地址段重叠,减少后续路由冲突。

易错点

  • 未初始化集群模式就创建:命令直接报错,单机场景下这类网络也没有实际用途
  • 云环境安全组未放通封装端口:节点间时通时断,故障表现为间歇性失败
  • 把它当作单机网络使用:带来不必要的封装开销与运维复杂度
  • 网段与现有网络重叠:路由冲突导致部分流量走错路径,排查难度很高

数据来源与参考

  • Docker 官方文档:Overlay network driver(docs.docker.com/network/drivers/overlay)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌