Jenkins Pipeline 一键部署SpringBoot项目
介绍
通过jenkins的pipeline 可以很清晰了解发布项目经历了哪些步骤,每一步成功失败一目了然,某一个步骤阶段失败了修复好了问题之后可以不用重头再来构建,可以继续上次失败的步骤执行,还可以清楚的看到每一个阶段执行的日志信息
准备
安装插件
1、安装版本控制工具git 参数选择插件
Git Parameter
2、安装maven pipeline插件:
Pipeline Maven Integration Plugin
3、安装pipeline可视化插件
Blue Ocean
定义pipeline
新建Jenkinsfile文件,内容如下:
import java.text.SimpleDateFormatdef project_name = 'springboot-demo'
def image_repo_credentialsId = 'aliyun-harbor'
def image_repo_url = 'https://harbor.xxx.com/'
def image_name = 'harbor.xxx.com/demo/springboot-demo''
def sdf = new SimpleDateFormat("yyyyMMddHHmm")
def image_version = sdf.format(new Date())
pipeline {agent any//定义用户可操作参数//选择发布代码分支、是否安全检查、 是否单元测试 、部署镜像版本parameters {gitParameter name: 'BRANCH_TAG',type: 'PT_BRANCH_TAG',branchFilter: 'origin/(.*)',defaultValue: 'dev',selectedValue: 'DEFAULT',sortMode: 'DESCENDING_SMART',description: 'Select your branch or tag.'// choice(name: 'IsSkipSonarQube', choices: ['false','true'],description: '')choice(name: 'IsSkipUnitTest', choices: ['true','false'],description: '')// string(name: 'image_version', defaultValue: '2022-03-18', description: 'please give a image version')}stages {//step1:拉取代码stage('Pull Code') {steps {git branch: "${params.BRANCH_TAG}",credentialsId: 'springboot-demo',url: 'http://xxx.xxx.net/demo/springboot-demo.git'}}//step2:构建打包stage('Build Code') {steps {withMaven(jdk: 'jdk1.8',maven: 'mvn',mavenSettingsConfig: '538d50cf-40fe-4adc-b564-d091ff473552') {sh "mvn -U clean package -pl ${project_name} -am -Dmaven.test.skip=${IsSkipUnitTest}"}}}//step3:制作镜像并推送到镜像仓库stage('Docker Image'){steps {withDockerRegistry(credentialsId: "${image_repo_credentialsId}", url: "${image_repo_url}") {sh "docker build -t ${project_name}:${image_version} ${workspace}/${project_name}"sh "docker tag ${project_name}:${image_version} ${image_name}:${image_version}"sh "docker push ${image_name}:${image_version}"sh "docker rmi ${image_name}:${image_version}"}}}}
}
创建pipeline任务
构建发布
查看构建过程
点击【打开Blue Ocean】,如下图所示
点击上图中运行中的最新的任务,如运行编号为2的,如下图所示:
Jenkins Pipeline 一键部署SpringBoot项目相关推荐
- Jenkins+Pipeline+Docker部署SpringBoot项目到远程服务器
Jenkins部署 前言 Jenkins 安装 nginx配置 jenkins配置 Docker安装 项目部署 项目添加Dockerfile文件 Jenkins新建任务 使用Pipeline部署 结果 ...
- IDEA配置Docker一键部署SpringBoot项目(企业级做法)
Docker一键部署SpringBoot项目 前言 一.开启Linux的Docker远程访问 1.1 安装vim工具: 1.2 修改`daemon.json`的配置: 1.3 加入配置: 1.4 重新 ...
- 【Docker】11、IDEA集成Docker插件实现一键部署SpringBoot项目
日常开发项目的过程中,我们每次需要部署线上的时候,都需要安装一大堆的运行环境,例如:JDK.MySQL.Redis 等,非常花费时间.我们可以使用 Docker 的容器技术,方便快捷地搭建项目启动所需 ...
- docker一键部署springboot项目(三)
上一篇,大概讲了下早docker中部署redis.tomcat(JavaWeb项目)和nginx,当我们做了那么多,终于部署好一套完整的环境之后,要是移植怎么办,这里呢,就算是docker的好处了吧, ...
- jenkins+pipeline+docker部署vue项目
这里只是一个简单的例子,只要掌握了思路,部署别的项目都是一样的 项目步骤 第一步:拉取代码 第二步:编译部署获取构建产物 第三步:将产物传输到业务服务器,并根据具体业务场景看是否需要重启服务 node ...
- jenkins整合gitee自动部署SpringBoot项目
文章目录 前提条件 一.服务器安装jenkins 方法一:简单快捷 第一步:将jenkens.war导入到系统 第二步:放在tomcat的webapp下面 第三步:访问http://ip:8080/j ...
- 个人博客,懒人终章部署,阿里云Ecs+Jenkins+Gitee自动,一键部署SpringBoot自己博客项目,还在用
阿里云Ecs+Jenkins+Gitee自动,一键部署SpringBoot自己博客项目: 最近看见网上很多Jenkins的自动部署SpringBoot的Demo,但是都要自己安装JDK,Maven.. ...
- Docker系列之Jenkins+Git实现流水线部署SpringBoot项目
1. 概述 本文使用Docker.Jenkins和Gitee持续部署SpringBoot项目,小伙伴们需要提前准备好Docker和Jenkins开发环境,有不清楚如何安装Docker和Jenkins的 ...
- Jenkins结合Gitee(码云)自动化部署Springboot项目(比较详细)
Jenkins结合码云自动化部署Springboot项目 一.准备工作(有的话,可以忽略) 1. 安装wget 2. 安装jdk 3. 安装maven 4. 安装git 二.开始部署 (jenkins ...
最新文章
- bigdecimal不等于0怎么写_创业计划书不知道怎么写?掌握核心逻辑是关键
- python绘制条形图-python 中条形图绘制
- 用python排序算法_Python - 八大排序算法
- Yarn 报错:error Couldn‘t publish package: “https://registry.yarnpkg.com/ 。。。Forbidden“
- Sublime Text 3 注册码
- Jquery乱码终极解决方案
- 无线网卡在使用过程突然不好使的解决方法,Deepin Linux 15.9与Windows 10双系统
- Office 365强势来袭PART2:云中SharePoint
- Docker备份镜像和重新载入镜像
- linux镜像文件太大不好下载_Rufus下载_Rufus官方下载[U盘工具]
- DICOM VR数据类型表
- 词法分析(三):有限自动机DFA与NFA
- 报表生成器FastReport .Net使用Windows.Forms教程
- 在Linux中禅道的安装流程
- 云计算是什么? 云计算入门必备的60条术语
- Rss Feed是什么
- 指令下载Google网盘数据遇到的无法连接问题
- 《C++语言程序设计(第4版)学生用书》课程学习(12)——第12章 异常处理
- java中float和double为什么会转为科学记数法?
- MVZ2Android,植物大战僵尸mvz2
热门文章
- 企业邮箱发送出去的邮件找不到了
- Eureka解密(1)------ 注册实例服务发现理解
- 访问ftp服务器不显示文件夹权限问题,访问ftp服务器显示无权限问题
- OBS Studio(obs录屏软件)官方中文版V27.2.4 | 最新obs中文版百度云下载
- Python---按字典序输出集合的所有非空子集
- 图像mnf正变换_基于MNF 变换的多元变化检测变化信息的集中
- 抖音短链接v.douyin.com怎么做的
- 库卡机器人C2更换系统操作步骤
- 如何查看.net core 最新版本的功能
- GitHub好玩的项目之你想要的样子 我都有