待定jenkins没有docker-slave标签

llycmphe  于 2023-05-16  发布在  Jenkins
关注(0)|答案(2)|浏览(212)

我正在尝试将jenkins slave配置为docker容器,已启用docker API,并且连接到API工作正常
已经添加了docker模板和docker云的配置,但似乎我的工作没有启动
我可以看到容器在我的docker节点上创建,但作业没有启动
Docker cloud configuration image
docker template image
需要注意的一点是,当我在docker节点上运行容器,然后尝试使用jenkins中使用的相同凭据进行ssh时,我可以ssh到容器中。

u5rb5r59

u5rb5r591#

Jenkins没有标签XXXX”的消息是相当误导和无益的。
你认为问题是你在配置中做错了什么,当你发现发生了什么时,它与jenkins或你如何设置docker插件无关。我遇到了和你一样的问题,问题是我正在使用的Docker安装。

我修复它的步骤是:(我使用的是CENTOS7,jenkins 2.1.38,docker版本1.13.1)

1)转到jenkins的日志(centos日志是/var/log/jenkins. log)
2)查看日志,你会发现问题所在。例如对我来说是这样的:

  • com.github.dockerjava.API.exception.NotFoundException:{“message”:“驱动程序在端点happy_heyrovsky(cbfa 0 d43 f8 c89 d2531323249468503 be 11 e9 dd 603597 a870530 d28540 c662695)上编程外部连接失败:exec:\“docker-proxy":在$PATH中找不到可执行文件”}*

正如你所看到的问题是,docker它无法找到docker-proxy?如何解决这个问题?
转到**/usr/libexec/docker**,会看到docker-proxy-current。所以你要做是创建一个链接:

sudo ln -s docker-proxy-current docker-proxy

就是这样。在做了这个改变之后,我在jenkins上执行了我的构建,它工作了。

7dl7o3gd

7dl7o3gd2#

对我来说,“Jenkins没有标签XXXX”是因为与docker的连接由于url更改而丢失,因此docker插件无法建立连接,并将流量从Jenkins转发到Docker Desktop:
See relavent question

如图所示,点击“测试连接”按钮,它通过了。

相关问题