0

我将 Jenkins 用于我的 CCID 东西。我有两台服务器,一台是 server1,另一台是 server2。在 server1 中我安装了 Jenkins(未安装 Docker),在 server2 中我安装了 Docker。

我在我的 JenkinsFile 中为我的 docker 构建过程使用了docker.build命令并在 server1 中运行它,但它抛出“找不到 docker 命令”,因为 server1 中没有安装 Docker。我使用的代码如下:

stage 'Build Docker image'
node {
  def image = docker.build('/sampleApp:2.1')
}

我需要在 server2 上运行这些 Docker 命令。

4

1 回答 1

2

Jenkins 有标签的概念,您可以将其分配给节点(主节点和从节点)。docker您现在应该给已安装标签的节点,例如docker.

这可以通过Manage Jenkins > Manage Nodes来完成,然后单击右侧的齿轮图标来配置您的server2

从配置

在您的管道中,您可以为node步骤提供标签,以便在具有特定标签的节点上运行:

node('docker') {
  def image = docker.build('/sampleApp:2.1')
}
于 2017-01-13T14:41:54.623 回答