java this流水线更新_Jenkins + Pipline +K8S 流水线项目选择分支自动发布、更新、回滚...

写在前面:

在生产环境中,我们通常会使用Jenkins流水线部署k8s群集,这里主要介绍使用Jenkins的pipline可选择分支实现k8s群集的发布、更新、回滚功能

部署环境

角色

IP地址

部署软件

硬件

系统

master

192.168.154.134

docker 、k8s

2C2G

CentOS 7.6

node02

192.168.154.132

docker 、k8s

2C2G

CentOS 7.6

node01

192.168.154.129

docker、docker-compose、harbor 、k8s

2C2G

CentOS 7.6

gitlab

192.168.154.131

gitlab 、git、mysql

2C3G

CentOS 7.6

jenkins

192.168.154.128

jdk、git、jenkins、docker、maven

2C2G

CentOS 7.6

实验目的

1.分支可选

有2个分支branch=(master,develop),可以任意选择分支构建

2个分支的区别

为了做实验,修改背景图片来做区别

master 分支:背景图片上面版本号:v1.0

develop 分支:背景图片上面版本号:v2.0

3.构建方法可选

每个分支都有2个构建方法action=(release,rollback),可以任意选择方法

4.两个方法的区别

方法release:正常版本发布

方法rollback:出现问题时,紧急回滚上一个版本

实现选择各分支和各方法,随意组合,构建版本

部署过程

环境服务部署:

一、编写流水线脚本

1.编写Jenkinsfile

pipeline {

agent any

// 拉取代码

stages {

stage('GetCode') {

when { environment name: 'action', value: 'release' }

steps {

println("your choices are Branch:${branch} action:${action} version:1.0 ! ")

sleep 3

}

}

// 代码编译

stage('Maven Build') {

when { environment name: 'action', value: 'release' }

steps {

sh '''

export JAVA_HOME=/usr/local/java

/usr/local/apache-maven-3.6.3/bin/mvn clean install -Ptest

'''

}

}

// 项目打包成镜像并推送到仓库

stage('Build and Push Image') {

when { environment name: 'action', value: 'release' }

steps {

sh '''

REPOSITORY=192.168.154.129/maven-test01/maven-quartz:v1 #develop是v2

docker build -t $REPOSITORY .

docker login 192.168.154.129 -u admin -p Harbor12345

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值