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

如何在Jenkinsfile中延长Docker步骤的超时时间?

解决Jenkins Docker Pipeline插件docker.image()步骤超时问题

你遇到的「Timeout after 1 minutes」是Docker Pipeline插件内置的镜像拉取超时限制(默认1分钟),和你添加的流水线timeout、sleep无关——前者没覆盖到插件内部的拉取逻辑,后者完全不影响拉取阶段的超时判定。以下是两种可行的解决方法:

方法一:全局修改插件超时配置

这是全局生效的方案,所有流水线都会使用新的超时设置:

  • 进入Jenkins后台,点击「Manage Jenkins」→「Global Tool Configuration」
  • 找到「Docker Pipeline」配置区域(部分版本可能显示为「Docker」)
  • 调整「Image Pull Timeout」(或类似命名的选项)的数值,比如改成10分钟,保存配置即可。

方法二:流水线内手动拉取镜像(临时生效)

如果只需要给特定流水线调整超时,可以绕过插件内置的拉取逻辑,手动用docker pull命令拉取,并用流水线的timeout包裹:

// 自定义超时时间,这里设置为10分钟
timeout(time: 10, unit: 'MINUTES') {
    sh "docker pull ${docker_image_here}"
}

// 拉取完成后正常使用镜像
def myImage = docker.image(docker_image_here)
myImage.inside {
    // 执行你的流水线任务步骤
    sh "echo '任务执行中...'"
}

这种方式通过手动拉取接管了镜像获取的超时控制,避免触发插件的默认1分钟限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 19:42:04