Jenkins 作业终止后清理孤立的 docker 容器

2024-01-02

我在一个大型组织工作,该组织在共享 Jenkins 集群中运行数百个作业。

我的 Jenkins 工作需要针对 Docker 容器内运行的不受信任的代码运行集成测试。我担心当我的 Jenkins 工作突然终止(例如工作中止或超时)时,我将留下孤立的容器。

我努力了https://github.com/moby/moby/issues/1905 https://github.com/moby/moby/issues/1905 and ulimits对我不起作用(这是因为它仅适用于运行的容器bash https://stackoverflow.com/a/40846294/14731,而且我不能保证我的会这样做)。

I tried https://stackoverflow.com/a/26351355/14731 https://stackoverflow.com/a/26351355/14731 but --lxc-conf不是 Docker for Windows 的公认选项(这需要在 docker 支持的所有平台上运行)。

有任何想法吗?


那么你可以在工作的第一步和最后一步中使用清理命令,例如,首先清理旧的死者,然后将现有容器重命名为 old_$jobname 并杀死它

  • docker container prune -f
  • docker rename $jobname old$jobname
  • docker kill old$jobname做任何你需要做的事

启动你的新容器 -docker run --name $jobname$

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jenkins 作业终止后清理孤立的 docker 容器 的相关文章

随机推荐

  • PageKeyedDataSource loadAfter 没有起火

    在我的片段中 我集成了 android jetpack 分页库和我使用的数据源页面键控数据源带有改造 API 回调 代码以异常方式运行并将数据加载到回收者视图但当我滚动到底部后 它应该通过触发加载更多数据加载后数据源类中的函数 但没有 我也
  • 如何在swift 3中绘制圆弧

    我有一些来自网络服务的百分比值 根据百分比值我想在a中画一些圆弧UIView通过以下方式 白色圆圈是一个UIView我尝试通过这种方式来实现这一目标 func colorProgress let circleColorPath UIBezi
  • byte[] 到无符号 BigInteger?

    动机 我想将哈希值 MD5 SHA1 等 转换为十进制整数 以便在 Code128C 中制作条形码 为简单起见 我希望所有结果 大 数字都是正数 我能够在 C 中将 byte 转换为 BigInteger 到目前为止我所拥有的样本 byte
  • 如何在 Visual Studio 2013 中启用 C# 6.0 功能?

    我正在了解 C 6 0 中引入的最新功能 并且只是遵循自动属性初始值设定项的示例 class NewSample public Guid Id get Guid NewGuid 但我的 IDE 无法识别该语法 我想知道如何在 Visual
  • Docker 容器构建失败:“exec:\”flask\”:在 $PATH 中找不到可执行文件”:未知

    我正在学习码头工人 我尝试在 docker com 上运行示例 dockerfile 但我有一个问题是 守护进程的错误响应 OCI 运行时创建失败 container linux go 345 启动容器进程导致 exec flask 在 P
  • 如果文件已重命名,如何查找文件扩展名?

    如果文件已重命名 如何查找文件扩展名 有没有可用的工具 示例 我有一个文件 1 doc 我希望大家知道这是一个我刚刚重命名为 1 txt 的Word文档 但该文件原本是Word文档 如何获得原始文件扩展名 您无法恢复以前的文件扩展名 您所能
  • 通过流下载 azure blob - 出口 137

    我正在尝试通过 Azure python sdk get blob to stream 下载大文件 但是 我的程序不断退出 返回代码为 137 这似乎与内存不足有关 我可以在顶部看到 python 正在消耗越来越多的内存 直到它被杀死 Co
  • 为 AWS APIGateway 创建 VPC 链接时出现“NLB ARN 格式错误”

    我按照教程创建了一个指向我的私有 elb 平衡器的 VPC 链接 https docs aws amazon com apigateway latest developerguide set up api with vpclink cli
  • 验证是否所有复选框均未选中的快速方法?

    如果取消选择所有复选框 是否有一种快速方法或功能可以告诉我真 假 不通过数组 使用 JS 和 HTML 我所有的复选框都有相同的名称
  • “respond_to do |格式|”抛出 UnknownFormat 错误

    我正在尝试使用 ajax 从控制器渲染 js 文件 这个确切的代码以前总是有效的 甚至在其他方法中也有效 但我突然开始收到此错误 ActionController UnknownFormat in MoviesController vote
  • jQuery 选择框 .val('') 行为从 1.9 到 1.10+ 不同,最短的方法是什么[重复]

    这个问题在这里已经有答案了 jQuery 1 9 和 1 10 之间的以下行为有所不同
  • 局部变量的 MAXRECURSION 值

    我正在 SQL Server 2005 中编写一个存储过程 它声明一个名为 CTE 公用表表达式 foo foo递归地调用自身 但当 SP 的参数之一 bar 一片空白 为了停止这个无限循环 我一直在尝试使用该选项MAXRECURSION
  • 使用 JavaScript 从 Dropbox 下载文件

    I have 我有一个网站正在尝试向客户提供一项服务 以便能够从 Dropbox 下载文件 为了简化开发 我使用Dropbox 选择器 https www dropbox com developers chooser 为此 我启用了我希望从
  • 如何添加元组

    我有这样的伪代码 if b lt a return 1 0 foo a b b 我想用Python写它 但是Python可以添加元组吗 编写类似代码的最佳方法是什么 我会去 gt gt gt map sum zip 1 2 3 4 4 6
  • Clojure / Incanter 中的快速矢量数学

    我目前正在研究 Clojure 和 Incanter 作为 R 的替代品 并不是说我不喜欢 R 而是尝试新语言很有趣 我喜欢 Incanter 并且发现语法很有吸引力 但相比之下 矢量化操作相当慢例如到 R 或 Python 作为一个例子
  • 适合7岁孩子的环境[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • OpenCV 尝试使用 RELEASE 构建读取视频时崩溃

    Using VideoCapture vcc someDir someFile avi 作为我的代码 OpenCV 2 x Win7 VS2010 中的第一行 RELEASE 的执行崩溃了 但 DEBUG 工作正常 尽管慢如预期 仅当尝试读
  • 如何在 C# 中使用多个变量来锁定作用域

    我遇到的情况是 只有两个储物柜对象空闲时才应执行代码块 我希望会有类似的东西 lock a b this scope is in critical region 然而 似乎并没有这样的事情 那么这是否意味着做到这一点的唯一方法是 lock
  • MySQL 排列现有表列

    如何更改某个现有列的位置MySQL table 例如 我想移动该列username从其当前位置改为位于所有列之后 或者我希望它位于表中任何特定列之前 如果您愿意 可以更改列的顺序 如果您的用户名列是 varchar 255 那么 alter
  • Jenkins 作业终止后清理孤立的 docker 容器

    我在一个大型组织工作 该组织在共享 Jenkins 集群中运行数百个作业 我的 Jenkins 工作需要针对 Docker 容器内运行的不受信任的代码运行集成测试 我担心当我的 Jenkins 工作突然终止 例如工作中止或超时 时 我将留下