一次docker swarm重启的教训

背景:

公司有个业务系统是基于docker swarm的部署架构。由于我修改了某个配置,需要对docker进行重启,执行完systemctl restart docker 以后容器中的服务没有按计划启动起来。

执行docker service ls发现swarm中的服务在,但是容器启动不起来。

1、执行如下命令

复制代码
docker service ps --no-trunc  {tfg8sns6kvaq} #容器id

返回内容为;

复制代码
Dokcer Swarm - network sandbox join failed: subnet sandbox join failed

2、解决方法:

2.1、查看 /sys/class/net 目录下vx-*的VLAN

复制代码
ls -l /sys/class/net/ | grep vx

2.2、我们有了接口id,拉取更多详细信息

复制代码
udevadm info /sys/class/net/

2.3、如果这些接口存在,我们应该能够安全地删除vx-1231231-xxxxxx接口。

复制代码
ip -d link show vx-1231231-xxxxx
ip link delete vx-1231231-xxxxx

2.4、重启docker 服务

复制代码
systemctl retart docker
相关推荐
qq_452396235 分钟前
第十三篇:《Docker Swarm 集群基础》
运维·docker·容器
biter down25 分钟前
6:参数化
运维·服务器
海域云-罗鹏1 小时前
企业服务器遭到网络攻击该如何解决?应急处理与长效防护方案
运维·服务器·安全
取经蜗牛2 小时前
docker环境中redis连接三种场景配置指南,物理机、wsl、docker
redis·docker·容器
YOU OU2 小时前
Linux基本使用和程序部署
linux·运维·服务器
尼莫点nemo2 小时前
docker-builder:把 .devcontainer/ 从手写变成一句话生成
docker
AI行业学习2 小时前
PuTTY 工具下载部署、基础配置及 SSH 远程服务器连接完整操作指南Windows 平台 【2026.6.1】
运维·windows·ssh
jiayong232 小时前
CI/CD深度解析01-核心概念与原理
运维·git·ci/cd
fred_kang2 小时前
如何找到 Linux 服务器上某个 URL 路径对应的实际部署位置
linux·运维·服务器
zandy10113 小时前
Hermes Agent 2026年6月最新安装教程
docker·github·agent