介绍

通过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项目相关推荐

  1. Jenkins+Pipeline+Docker部署SpringBoot项目到远程服务器

    Jenkins部署 前言 Jenkins 安装 nginx配置 jenkins配置 Docker安装 项目部署 项目添加Dockerfile文件 Jenkins新建任务 使用Pipeline部署 结果 ...

  2. IDEA配置Docker一键部署SpringBoot项目(企业级做法)

    Docker一键部署SpringBoot项目 前言 一.开启Linux的Docker远程访问 1.1 安装vim工具: 1.2 修改`daemon.json`的配置: 1.3 加入配置: 1.4 重新 ...

  3. 【Docker】11、IDEA集成Docker插件实现一键部署SpringBoot项目

    日常开发项目的过程中,我们每次需要部署线上的时候,都需要安装一大堆的运行环境,例如:JDK.MySQL.Redis 等,非常花费时间.我们可以使用 Docker 的容器技术,方便快捷地搭建项目启动所需 ...

  4. docker一键部署springboot项目(三)

    上一篇,大概讲了下早docker中部署redis.tomcat(JavaWeb项目)和nginx,当我们做了那么多,终于部署好一套完整的环境之后,要是移植怎么办,这里呢,就算是docker的好处了吧, ...

  5. jenkins+pipeline+docker部署vue项目

    这里只是一个简单的例子,只要掌握了思路,部署别的项目都是一样的 项目步骤 第一步:拉取代码 第二步:编译部署获取构建产物 第三步:将产物传输到业务服务器,并根据具体业务场景看是否需要重启服务 node ...

  6. jenkins整合gitee自动部署SpringBoot项目

    文章目录 前提条件 一.服务器安装jenkins 方法一:简单快捷 第一步:将jenkens.war导入到系统 第二步:放在tomcat的webapp下面 第三步:访问http://ip:8080/j ...

  7. 个人博客,懒人终章部署,阿里云Ecs+Jenkins+Gitee自动,一键部署SpringBoot自己博客项目,还在用

    阿里云Ecs+Jenkins+Gitee自动,一键部署SpringBoot自己博客项目: 最近看见网上很多Jenkins的自动部署SpringBoot的Demo,但是都要自己安装JDK,Maven.. ...

  8. Docker系列之Jenkins+Git实现流水线部署SpringBoot项目

    1. 概述 本文使用Docker.Jenkins和Gitee持续部署SpringBoot项目,小伙伴们需要提前准备好Docker和Jenkins开发环境,有不清楚如何安装Docker和Jenkins的 ...

  9. Jenkins结合Gitee(码云)自动化部署Springboot项目(比较详细)

    Jenkins结合码云自动化部署Springboot项目 一.准备工作(有的话,可以忽略) 1. 安装wget 2. 安装jdk 3. 安装maven 4. 安装git 二.开始部署 (jenkins ...

最新文章

  1. bigdecimal不等于0怎么写_创业计划书不知道怎么写?掌握核心逻辑是关键
  2. python绘制条形图-python 中条形图绘制
  3. 用python排序算法_Python - 八大排序算法
  4. Yarn 报错:error Couldn‘t publish package: “https://registry.yarnpkg.com/ 。。。Forbidden“
  5. Sublime Text 3 注册码
  6. Jquery乱码终极解决方案
  7. 无线网卡在使用过程突然不好使的解决方法,Deepin Linux 15.9与Windows 10双系统
  8. Office 365强势来袭PART2:云中SharePoint
  9. Docker备份镜像和重新载入镜像
  10. linux镜像文件太大不好下载_Rufus下载_Rufus官方下载[U盘工具]
  11. DICOM VR数据类型表
  12. 词法分析(三):有限自动机DFA与NFA
  13. 报表生成器FastReport .Net使用Windows.Forms教程
  14. 在Linux中禅道的安装流程
  15. 云计算是什么? 云计算入门必备的60条术语
  16. Rss Feed是什么
  17. 指令下载Google网盘数据遇到的无法连接问题
  18. 《C++语言程序设计(第4版)学生用书》课程学习(12)——第12章 异常处理
  19. java中float和double为什么会转为科学记数法?
  20. MVZ2Android,植物大战僵尸mvz2

热门文章

  1. 企业邮箱发送出去的邮件找不到了
  2. Eureka解密(1)------ 注册实例服务发现理解
  3. 访问ftp服务器不显示文件夹权限问题,访问ftp服务器显示无权限问题
  4. OBS Studio(obs录屏软件)官方中文版V27.2.4 | 最新obs中文版百度云下载
  5. Python---按字典序输出集合的所有非空子集
  6. 图像mnf正变换_基于MNF 变换的多元变化检测变化信息的集中
  7. 抖音短链接v.douyin.com怎么做的
  8. 库卡机器人C2更换系统操作步骤
  9. 如何查看.net core 最新版本的功能
  10. GitHub好玩的项目之你想要的样子 我都有