相关疑难解决方法(0)

Jenkins在Windows上使用Docker - 无法运行程序"nohup"

我正在使用带有Linux Master 的Jenkins Azure VM代理插件来在Windows代理上启动作业.

我已经完成了所有配置步骤,一切正常,直到我尝试在代理上使用Docker.

我的管道脚本:

pipeline {
    agent {
        docker {
            image 'myurl.io/myimage:latest'
            registryUrl 'https://myurl.io/'
            registryCredentialsId '123456789abcdefg'
        }
    }
Run Code Online (Sandbox Code Playgroud)

管道在运行此命令时似乎失败:

docker pull myurl.io/myimage:latest
Run Code Online (Sandbox Code Playgroud)

报告的错误归结为:

Caused: java.io.IOException: Cannot run program "nohup" (in directory "C:\Jenkins\workspace\Test Pipeline Docker"): CreateProcess error=2, The system cannot find the file specified
Run Code Online (Sandbox Code Playgroud)

一些说明:

  • 我勾选了在图片上安装git的方框: 在此输入图像描述

  • Git工具似乎已成功安装在代理VM上

  • 这个问题似乎有关,但不完全相同

    • 我没有sh直接运行命令,它是由插件运行的.
    • 我不认为我有权PATH在此阶段设置
  • 关于JIRA https://issues.jenkins-ci.org/browse/JENKINS-36776的这个问题是相关的,但它似乎没有修复,建议的解决方法似乎不适用于我的情况

我的问题

有没有办法让我的管道脚本工作?也许有一些额外的命令,我可以在代理启动后以某种方式在代理上执行 - 但在docker pull命令之前- 将所需的目录添加到PATH

或者还有其他一些解决方法吗?

windows azure jenkins docker

10
推荐指数
1
解决办法
1500
查看次数

标签 统计

azure ×1

docker ×1

jenkins ×1

windows ×1