[英]How to restrict the jenkins pipeline docker agent in specific slave?
我有幾個jenkins奴隸配置,只有標簽與dockerserver
有dockerserver
env,那么我怎樣才能限制jenkins管道docker代理在這個奴隸?
在Jenkinsfile
下面不起作用, stage
的agent
將覆蓋已定義的slave dockerserver
pipeline { agent { label 'dockerserver' } stages { stage('Back-end') { agent { docker { image 'maven:3-alpine' } } steps { sh 'mvn --version' } } stage('Front-end') { agent { docker { image 'node:7-alpine' } } steps { sh 'node --version' } } } }
它可能會選擇其他沒有支持docker的slave
有什么建議嗎?
剛出現同樣的問題,似乎對我有用:
pipeline {
agent { label 'dockerserver' } // if you don't have other steps, 'any' agent works
stages {
stage('Back-end') {
agent {
docker {
label 'dockerserver' // both label and image
image 'maven:3-alpine'
}
}
steps {
sh 'mvn --version'
}
}
stage('Front-end') {
agent {
docker {
label 'dockerserver' // both label and image
image 'node:7-alpine'
}
}
steps {
sh 'node --version'
}
}
}
}
在更多地閱讀了指南之后,注意到它已經說明了https://jenkins.io/doc/book/pipeline/docker/#specifying-a-docker-label 。
它應在jenkins全局(系統)配置中配置
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.