一、Jenkinsfile理解
Jenkins Pipeline 提供了一套可扩展的工具,用于将“简单到复杂”的交付流程实现为“持续交付即代码”。Jenkins Pipeline 的定义通常被写入到一个文本文件(称为 Jenkinsfile )中,该文件可以被放入项目的源代码控制库中。
二、实验目的
通过Jenkinsfile文件,控制Jenkins版本发布,首先拉取指定的远程仓库文件到jenkins节点服务器上, 然后获取仓库文件下的Jenkinsfile文件内容,执行里面相关的内容,如:
1、打印当前的环境变量
2、构建镜像
3、创建deployment
三、实验步骤
1、在myblog项目中新建Jenkinsfile文件,内容如下:
pipeline {
agent { label '10.3.153.202'} #指定在那台Jenkins节点上运行
stages {
stage('更新开始') {
steps {
echo '更新开始'
sh 'printenv'
}
}
stage('build-image') {
steps {
retry(2) { sh 'docker build . -t myblog:latest'} #构建镜像
}
}
stage('deploy') {
steps {
timeout(time: 1, unit: 'MINUTES') {sh "kubectl apply -f deploy/" #创建deployment
}
}
}
}
}