1

我正在按照这个片段添加到 jenkins 构建代理的 docker 文件(https://www.jenkins.io/doc/book/pipeline/docker/),

pipeline {
agent { dockerfile true }
stages {
    stage('Test') {
        steps {
            sh 'node --version'
            sh 'svn --version'
        }
    }
}
}

'dockerfile true'查找默认的 Dockerfile。有没有一种方法可以指定 docker 文件名,因为我不想使用默认文件名,因为我的设置与已经存在的设置不同?

4

1 回答 1

1

是的,您绝对可以在指令中指定dockerfile文件名。agent这方面的一个例子(与dockerfile参数 in的其他参数agent)将是:

agent { // agent directive
  // Equivalent to "docker build -f Dockerfile.build --build-arg version=1.0.2 ./build/
  dockerfile { // dockerfile parameter
    filename             'Dockerfile.build' // filename argument and value
    dir                  'build'
    label                'my-defined-label'
    additionalBuildArgs  '--build-arg version=1.0.2'
    args                 '-v /tmp:/tmp'
  }
}

管道代理参数的文档中,您可以向下滚动到dockerfile参数以查看参数的参数以及它们如何允许agent自定义。

于 2021-12-22T16:56:47.307 回答