jenkins+svn+maven+springboot持续集成,自动部署微服务

使用jenkins持续集成,自动部署Springboot微服务

简介

本文将使用jenkins作为持续集成(CI)工具,对使用springboot作为基础框架的微服务项目进行持续集成、自动部署的过程做一个详细的讲解。部署过程中,根据实际用到的微服务模块,每个模块会新建一个对应的jenkins项目。(在本文中,有关jenkins、svn、maven、jdk等常用组件的安装会被省略)

手动部署与自动部署

  1. 手动发布微服务项目的时候,通常是在本地将各个模块分别进行打包,打好的jar包上传至服务器中,通过启动脚本,将jar包运行起来。在项目初期,模块较少的时候并不是很麻烦,无非就是打包、上传、启动三个步骤。但是随着模块的增多,每次部署的时候,每一个模块都要分别将上述三个步骤执行一遍,且往往上传的时候部分jar包过大,导致上传速度奇慢无比,部署进度被严重拖慢,对于部署人员的时间也是一种极大的浪费。
  2. jenkisn的执行过程也大概如上所说,无非是打包,上传,启动三个步骤。但是在jenkins中,完全可以通过项目的配置来实现上述操作:svn检出代码、代码打包,jar包上传、执行脚本。整个流程一气呵成,行云流水,完全不需要人工干预。

部署过程

  1. 进入到jenkins首页,点击New Item按钮,进行jenkins项目的新建
    新建jenkins项目
  2. 设置项目名称及项目类型,项目类型可根据自己实际需要进行选择,本项目选择构建一个maven项目
    构建maven项目
  3. 点击ok按钮后,进入到项目设置页面,本页面中需要对项目的配置信息进行设置。配置信息可以分为以下几个模块。
    • 基础信息:可设置项目的简介,使用的jdk版本等参数,其余参数均可根据自己实际需要进行设置。
      项目基本信息
    • 源代码管理模块:本项目中使用了svn,因此选择svn单选框,并在对应的栏目中输入对应模块的svn地址及svn登录用户源代码管理
    • 构建触发点:本项目中使用了定期构建的选项,并输入定期构建的时间参数,控制构建的开始时间构建触发点
    • 构建过程:根据模块中的pom.xml文件,通过maven命令进行打包,本项目中使用的maven打包命令如下:clean package install -U -Dmaven.test.skip=true -Ptest,意为使用maven命令进行包的清除、打包、安装api等操作。在这里插入图片描述
    • 构建后操作:在post steps模块下,选择add post-build step按钮,选择Execute shell选项,进行shell命令的编写。使jenkins在构建完成后,将构建完成的包发送到指定服务器,并运行启动脚本。(此处需要在jenkins服务器与目标服务器中进行ssh连接,因此需要配置jenkins服务器到目标服务器的免密登录)在本项目中,该命令为:
      scp target/jar包的名字.jar root@服务器地址:服务器中存放jar包的目录地址
      ssh root@服务器地址 "jar包启动脚本路径 restart"
      例如:
      ·scp target/book.jar root@127.0.0.1:/root/school/study·
      ·ssh root@127.0.0.1 “/root/school/study/startup.sh restart”·
      选择Execute shell
      输入shell命令
    • 构建完成后操作,通常在发布完成后,需要对指定的相关人员发送邮件。因此在构建完成后操作模块中,点击 add post-build action 按钮,选择editable email notification选项,在弹出的选择框中对需要发送的收件人及收件内容进行配置,配置完成后,还需要点击advance setting(高级设置)对邮件发送触发点进行设置,否则会出现发布成功,但是无法发送邮件的问题。点击高级设置后,在 Triggers一栏中,根据自己实际情况,选择新增触发点。
      发送邮件设置
      选择邮件触发点

点击构建

部署完成后,该项目即可通过定时器进行定时部署,同时也可以通过手动点击构建按钮,实时进行构建。
实时构建

构建完成

至此,jenkins对于springboot项目的自动部署配置已经完成,点击构建按钮,即可进行自动构建,并发送构建结果邮件到指定收件人。
欢迎大家在评论区多多交流,我也还是处于学习摸索的阶段,如有不足之处,望大家不吝赐教。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值