我已经在同一台机器上安装了Jenkins和Docker Ubuntu。
- Ubuntu 17.10
- Jenkins版本2.73.3
- Docker版本17.09.0-ce。
我正在尝试将jenkin docker容器设置为运行自动化测试套件的从属容器。
我能够正确地在Jenkins中设置Docker插件来启动Docker容器,并添加了一个Docker模板,其中包含我为设置Docker环境而创建的图像。
该镜像构建在Ubuntu托管的Docker上。
现在的问题是,当我从Jenkins运行一个作业时,它会给出一个错误消息(待定-Jenkins没有docker-slave标签)
Jenkins pending image
当我在Ubuntu机器中检查Jenkins日志时,我看到以下错误消息
com.github.dockerjava.api.exception.NotFoundException: {"message":"pull access
denied, "message":may require 'docker login'"}
字符串
在ubuntu机器上,我已经完成了docker登录。
我试图构建容器的镜像是在ubuntu本地的,没有推送到任何存储库,那么为什么要尝试拉取镜像呢?
另外,我需要解决的权限问题是什么?当从jenkins构建一个作业时,jenkins用户正在构建容器。我需要在那里添加其他东西吗?
2条答案
按热度按时间ma8fv8wu1#
在Jenkinsfile中,您可以使用credentials plugin的凭据:
字符串
${POM_VERSION}
只是从我自己的代码中截取的,当然可以是任何你喜欢的版本。您还需要在Jenkins服务器中定义凭据。可以在这里找到描述Working with jenkins credentials
b5buobof2#
检查你的docker模板配置,选择“Never pool”作为“pool strategy”。