You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Swarm集群证书过期后如何恢复并重新加入节点?

解决Docker Swarm证书过期导致集群失效的恢复方案

我完全懂这种隔了几个月回来发现集群崩了的崩溃感——证书过期确实是Docker Swarm容易踩的坑,尤其是长期不用的集群。别担心,这个问题完全能解决,而且步骤也不复杂,咱们一步步来:

第一步:清理所有节点的旧Swarm状态

因为证书过期后,所有节点都失去了有效的Swarm身份,首先要彻底清除旧配置:

  • 在每一个集群节点上执行强制退出Swarm命令:
    docker swarm leave --force
    
  • 接着删除Swarm的本地存储目录,彻底清理过期证书和残留配置:
    rm -rf /var/lib/docker/swarm/
    

第二步:重新初始化Swarm集群

选一个你原本的manager节点作为新的集群主节点,执行初始化命令(替换为你的节点实际IP):

docker swarm init --advertise-addr 10.10.1.10

执行成功后,终端会输出manager和worker节点的加入命令。如果后续需要重新查看令牌,可以执行:

  • 查看manager节点加入令牌:docker swarm join-token manager
  • 查看worker节点加入令牌:docker swarm join-token worker

第三步:重新加入其他节点

拿到对应的令牌后,在其他节点上执行对应的docker swarm join命令即可完成集群重建。比如manager节点的加入命令类似:

docker swarm join --token SWMTKN-1-xxxxxxxxxx 10.10.1.10:2377

避免后续再踩坑的小技巧

Docker Swarm默认证书有效期是90天,如果你需要长期稳定的集群,可以在初始化时指定更长的有效期,比如设置为1年:

docker swarm init --advertise-addr 10.10.1.10 --cert-expiry 8760h0m0s

另外,如果你之前有服务栈的配置文件,重新初始化集群后可以用docker stack deploy命令重新部署服务,只要数据卷是本地存储或挂载了外部持久化存储,数据不会丢失。

内容的提问来源于stack exchange,提问作者uberrebu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 00:29:06