我正在使用带有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工具似乎已成功安装在代理VM上
这个问题似乎有关,但不完全相同
sh直接运行命令,它是由插件运行的.PATH在此阶段设置我的问题
有没有办法让我的管道脚本工作?也许有一些额外的命令,我可以在代理启动后以某种方式在代理上执行 - 但在docker pull命令之前- 将所需的目录添加到PATH?
或者还有其他一些解决方法吗?