一次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
相关推荐
海盗12343 分钟前
VMware 中 CentOS 7 无法使用 yum 安装 wget 的完整解决方案
linux·运维·centos
kida_yuan15 分钟前
【Linux】在树莓派上搭建自建 Git 服务(基于 GitLab)- 实战笔记与运维清单
运维·gitlab·树莓派
lph00919 分钟前
mqtt broker (mosquitto)创建服务器、订阅与发布
运维·服务器
by————组态34 分钟前
睿控(Ricon)组态
运维·前端·物联网·信息可视化·组态·组态软件
戈壁老孙1 小时前
使用Nginx实现动态后端服务切换:一套配置管理多环境
运维·nginx
weixin_462446231 小时前
ubuntu真机安装tljh jupyterhub支持跨域iframe
linux·运维·ubuntu
a41324471 小时前
在CentOS系统上挂载硬盘到ESXi虚拟机
linux·运维·centos
MMME~1 小时前
Linux下的软件管理
linux·运维·服务器
❀͜͡傀儡师2 小时前
docker部署BentoPDF应用
运维·docker·容器
为爱停留2 小时前
Spring Boot 应用配置参数化实践:通过 Docker Run 参数传递配置
spring boot·后端·docker