詹金斯在码头工人中触发按需奴隶

时间:2016-07-27 15:09:30

标签: jenkins docker jenkins-plugins jenkins-pipeline jenkins-slave

我正在寻找一种在Jenkins奴隶中运行Jenkins作业/构建的方法,动态(按需)启动docker。附加模式以实现视觉理解。 我真正想要的是什么,我的流程如下:

1)触发Jenkins作业(手动/ git / gerrit)
2)Jenkins master(在docker中运行)启动slave机器docker(并传递构建的脚本/指令)
3)构建正在Jenkins奴隶(或奴隶,如果并行/管道)上运行 4)结果返回Jenkins大师
5)Jenkins奴隶码头停止

Jenkins Flow

有可能这样做吗?

2 个答案:

答案 0 :(得分:3)

  1. Docker从属图像创建步骤,如安装openssh,用户创建,在下面的链接中提到。从以下链接安装docker插件。

    点击here

  2. 转到jenkins全局配置,在云标题下,docker配置将在那里,输入带端口号的docker主机url,不需要凭据。为连接超时提供一些值&读取超时。

  3. 在泊坞模板下 - 输入我们在点编号1中创建的泊坞窗图像名称。

  4. 设置标签编号(在Jenkins创建作业期间提供此标签名称并限制为此从属名称),

  5. 选择使用选项 - >只建立有标签限制的工作。

  6. 执行人的否 - >最小1.选择启动方法为ssh,输入要登录的用户凭证,我们在步骤编号1中的docker image中创建。

  7. 创建一个作业限制到docker slave标签,运行,ondemand它将旋转容器。

答案 1 :(得分:0)

使用此插件:https://wiki.jenkins-ci.org/display/JENKINS/Yet+Another+Docker+Plugin

安装后(需要Java 1.8)naviaget进行配置。有两个步骤:

  1. 配置docker“cloud”
  2. 添加要在
  3. 上运行构建的“实例”(泊坞窗图片)

    每个图像都应该分配标签 - 在作业配置中使用此标签,以明确告知Jenkins应该运行作业的节点