一次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
相关推荐
摘星|18 分钟前
架设一台NFS服务器,并按照以下要求配置
linux·运维·服务器
做运维的阿瑞26 分钟前
Linux环境变量持久化完全指南
linux·运维·服务器
Mr_Dwj1 小时前
【运维】GNU/Linux 入门笔记
linux·运维·gnu
SHIPKING3931 小时前
【Docker安装】Windows10专业版安装教程
运维·docker·容器
编程的一拳超人2 小时前
Docker核心概念、常用命令与实战指南
运维·docker·容器
编程的一拳超人2 小时前
Docker 核心命令速查表(精细分类版)
运维·docker·容器
风吹一夏v2 小时前
Docker 部署 GitLab 和 GitLab Runner 指南
docker·容器·gitlab
曦樂~2 小时前
【Docker】网络
docker·容器·php
刘晓倩2 小时前
Docker Desktop(Windows/Mac)零外网部署 Dify 极简指南
macos·docker·容器
小任今晚几点睡2 小时前
Ansible 基础配置与负载均衡部署实践
运维·自动化·ansible·负载均衡