为了让构建任务在Docker中进行,需要在Jenkins agent主机上安装Docker,安装过程略,需要注意要将Jenkins agent的用户组加入到Docker的用户组,这样执行docker命令就不用带sudo了
pipeline中使用Docker非常简单
pipeline {
agent {
label 'docker'
image 'maven:3-alpine'
}
stages {
stage('build') {
steps {
sh 'mvn clean compile'
}
}
}
}
docker 的常用选项:
- label | 可选 | 与node的label作用一样
- image | 必选 | 指定的Docker镜像
- args | 可选 | 执行docker run所带的参数,如
args '-v /tmp:/tmp' - alwaysPull | 可选 | 布尔型 | 强制每次执行docker pull 时都重新拉取镜像
配置私有Docker私有仓库
上面的默认时,maven:3-alpine镜像都是从Docker的官方仓库中拉取,如果需要从其他仓库拉镜像,
进入 Manage Jenkins - Config System - Pipeline Model Definition,或者多分支任务配置页面中也有Pipeline Model Definition