我试图使用docker代理在windows 10下运行一个简单的jenkins管道。我的环境:
我的詹金斯档案:
pipeline {
agent {
docker {
image 'maven:3.5.0'
}
}
stages {
stage('Hello') {
steps {
sh 'mvn --version'
}
}
}
}其结果是,它甚至从未尝试运行docker:
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Declarative: Agent Setup)
[Pipeline] sh
[C:\Users\amoya\.jenkins\workspace\oya_sampleapp_jenkins-setup-FIF55WR7GZ32BUQR22LYEG2ZKBHHCXBCQH76TBZYJSB3TNTZCV7A] Running shell script
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline完整输出:https://gist.github.com/adrianmoya/bf01d97090c4b9de7fd27db31ecfc837
这就像试图在windows中运行sh,完全忽略了docker代理设置。在linux下,它拉下映像并成功地运行。感谢你的任何帮助
发布于 2017-09-25 17:19:26
您在哪里运行码头守护进程?
如果在本地主机上,请尝试将全局DOCKER_HOST env变量设置为tcp://ip.of.docker.daemon:port
您还可以在Jenkins配置中手动设置此设置。
而且,它似乎试图在Windows中启动shell命令,但没有成功.也许你可以试试'batch‘而不是'sh’?(在非Windows容器中运行shell的上下文中,这是没有意义的)
另一种选择是运行Virtualbox或Hyper-V中的Jenkins节点来完成所有的码头构建/运行,并使用节点标签。
https://stackoverflow.com/questions/43957848
复制相似问题