如何更新pipeline配置,使指定stage在独立容器中运行
构建stage指定独立容器运行的修改方法
以下修改基于Jenkins Kubernetes插件的标准语法,不需要调整已有的Pod模板配置,仅修改Pipeline中构建stage的代码即可:
前置确认
首先确认你配置的build容器模板的名称字段值,该值是后续指定容器的唯一标识,示例中统一使用build-container作为演示,你需要替换成自己实际配置的容器名称。
具体修改内容
声明式Pipeline修改
原有构建stage的写法:
stage('构建') { steps { // 构建相关命令 sh 'mvn clean package' } }
修改后需要在steps中嵌套container块,指定要使用的build容器:
stage('构建') { steps { container('build-container') { // 所有构建相关的步骤全部放在该块内 sh 'mvn clean package' sh 'docker build -t my-image .' } } }
脚本式Pipeline修改
原有构建stage的写法:
stage('构建') { sh 'mvn clean package' }
修改后写法:
stage('构建') { container('build-container') { sh 'mvn clean package' } }
生效说明
- 所有放在
container块内的步骤、命令,都会自动在你指定的build容器中执行,块外的步骤默认在JNLP容器中执行 - 同一Pod内的多个容器共享工作空间,JNLP容器拉取的代码在build容器中可以直接访问,无需重复拉取
- 请提前确认build容器中已预装构建所需的所有依赖工具(比如JDK、Maven、Docker CLI等),避免出现命令不存在的报错
内容的提问来源于stack exchange,提问作者Ramu
相关产品推荐
相关产品推荐

