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

Docker Swarm模式下如何删除Jenkins离线节点?解决容器自动重建问题

解决Docker Swarm模式下Jenkins的两个常见问题

1. 如何删除Jenkins中的离线代理/节点?

处理这个问题得两步走:先清掉Jenkins内部的节点记录,再处理Docker Swarm端的服务残留,避免后续自动再生。

  • 第一步:在Jenkins后台删除离线节点

    1. 登录Jenkins控制台,进入「Manage Jenkins」→「Manage Nodes and Clouds」
    2. 在节点列表里找到那个离线的代理,点右侧的「Delete」按钮
    3. 确认删除弹窗,Jenkins这边就会移除这个离线节点的所有记录
  • 第二步:清理Docker Swarm端的对应服务

    1. 登录Swarm集群的管理节点,先列出所有服务找到Jenkins代理的服务名:
      docker service ls
      
    2. 如果这个代理服务彻底不需要了,直接删除:
      docker service rm <你的jenkins代理服务名>
      
    3. 如果只是暂时停用,不想删服务,把副本数设为0就行:
      docker service scale <你的jenkins代理服务名>=0
      

2. 删除离线容器后Swarm持续自动生成新容器?

这大概率是Swarm服务设置了固定副本数,或者Jenkins的Swarm云配置开了自动扩容,导致Swarm一直在维持指定数量的容器。解决方法如下:

  • 先调整Swarm服务的副本配置

    1. 用docker service ls找到代理服务名,再查看服务详情:
      docker service inspect <你的jenkins代理服务名>
      
    2. 看输出里的Spec.Replicas字段,如果数值大于0,Swarm就会自动补容器到这个数。按需调整:
      • 不需要就设为0:docker service scale <你的jenkins代理服务名>=0
      • 要固定数量就设成你需要的数字,比如docker service scale <你的jenkins代理服务名>=2
  • 检查Jenkins的Swarm云自动扩容设置

    1. 进入Jenkins后台「Manage Jenkins」→「Manage Nodes and Clouds」→「Configure Clouds」
    2. 找到你配置的Docker Swarm云,查看「Agent templates」:
      • 有没有开「Scale agents automatically」这类自动扩容选项?有的话要么关掉,要么调整最大代理数、扩容阈值
      • 要是不再用这个代理模板,直接删掉,避免Jenkins自动给Swarm发创建容器的指令
  • 彻底清理(按需)
    如果确认不再用这个代理服务,直接删Swarm服务,同时在Jenkins里删掉对应的云代理模板,从根源上阻止自动生成容器。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:28:47