一次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
相关推荐
IT231025 分钟前
抖音作品自动化监控工具
运维·自动化
藤谷性能27 分钟前
Ubuntu 22.04:安装串口调试助手CoolTerm
linux·运维·ubuntu·串口·coolterm
丶伯爵式44 分钟前
Ubuntu 新装后常用设置
linux·运维·ubuntu
@LuckY BoY44 分钟前
deepin 系统的导航栏或任务栏不见了
运维·服务器
wang09071 小时前
Linux性能优化之中断
linux·运维·性能优化
huanmieyaoseng10031 小时前
Linux 安装配置 Tomcat超详细2026新(附安装包)
linux·运维·tomcat
tianyuanwo1 小时前
Kickstart 自动化安装中的密码管理:rootpw 与 chpasswd 完全指南
运维·自动化·kickstart
Black蜡笔小新1 小时前
花屏/蓝屏/黑屏/画面抖动/冻结/模糊检测,聊聊EasyCVR的视频质量诊断插件,解决运维人的实际烦恼
运维·音视频
Bert.Cai2 小时前
Linux cat命令详解
linux·运维