当前位置:   article > 正文

Jenkins(三):自动化部署SpringBoot项目_jenkins配置springboot项目

jenkins配置springboot项目


前言

软件开发过程中,自动化部署已经成为不可或缺的一环。Jenkins是一个广泛使用的开源自动化部署工具,它提供了强大的功能和灵活的配置选项,可以帮助开发团队实现高效的持续集成和持续部署。本文将详细介绍如何使用Jenkins自动化部署Spring Boot项目,以提高开发团队的效率和产品的交付速度。


一、安装Jenkins

首先,你需要在服务器或本地机器上安装Jenkins。你可以从Jenkins官方网站下载适合你操作系统的安装程序,并按照安装向导进行安装。安装完成后,你可以通过浏览器访问Jenkins的Web界面。具体安装步骤可以看这篇文章 如何安装-Jenkins

二、配置远端服务器

1.安装SSH

点击系统管理,点击插件管理

搜索栏输入“Publish Over SSH”

勾选安装完后,重启Jenkins

重启完后,登陆Jenkins,查看SSH插件是否已经安装完成

2.配置SSH

接下来,开始配置SSH Server。

 

往下滑,找到SSH Servers,然后点击新增

配置远程服务器的IP地址和账号、密码

Name:取一个自己容易认的名称,如**项目测试机

Hostname:指连接机器的IP或域名

Username:连接机器的用户,必须使用一个有权限的用户,如果觉得root太大,可在服务器另建一个用户,专门用来做jenkins访问使用的

Remote Directory:远程连接上去默认访问的路径,必须存在,并且有权限

勾选下方的权限选项,并设置一个密码password,此密码为登录用户名相对应的密码。

选择使用密码方式链接,输入账号的对应密码

填完后,验证一下配置是否正常,显示“Success”则代表配置没问题。然后点击保存即可。

二、配置Git

菜单入口

配置本地的Git安装路径

三、配置Maven

配置本地的maven安装路径

进入系统管理–系统设置,找到Maven项目配置,把全局MAVEN_OPTS改为如下:

四、配置JDK

配置本地的JDK安装路径

五、配置邮件

我们用的阿里云邮,所以用的是阿里的配置

阿里巴巴企业邮箱帮助中心 (mxhichina.com)

配置邮箱通知

设置邮件发送内容

代码内容如下:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
  6. </head>
  7. <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
  8. offset="0">
  9. <table width="100%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
  10. <tr>
  11. 本邮件由系统自动发出,无需回复!<br/>
  12. 大家好,以下为 ${PROJECT_NAME } 项目构建信息</br>
  13. <td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td>
  14. </tr>
  15. <tr>
  16. <td><br />
  17. <b><font color="#0B610B">构建信息</font></b>
  18. <hr size="2" width="100%" align="center" /></td>
  19. </tr>
  20. <tr>
  21. <td>
  22. <ul>
  23. <li>项目名称 : ${PROJECT_NAME}</li>
  24. <li>构建编号 : 第${BUILD_NUMBER}次构建</li>
  25. <li>触发原因: ${CAUSE}</li>
  26. <li>构建状态: ${BUILD_STATUS}</li>
  27. <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
  28. <li>构建URL: <a href="${BUILD_URL}">${BUILD_URL}</a></li>
  29. <li>测试报告: <a href="${PROJECT_URL}${BUILD_NUMBER}/allure/">${PROJECT_URL}${BUILD_NUMBER}/allure/</a></li>
  30. </ul>
  31. <h4><font color="#0B610B">失败用例</font></h4>
  32. <hr size="2" width="100%" />
  33. $FAILED_TESTS<br/>
  34. <h4><font color="#0B610B">最近提交(#${GIT_REVISION})</font></h4>
  35. <hr size="2" width="100%" />
  36. <ul>
  37. ${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
  38. </ul>
  39. 详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>
  40. </td>
  41. </tr>
  42. </table>
  43. </body>
  44. </html>

注意事项: 

六、构建maven项目

1.安装maven插件

输入搜索关键字: Maven Integration Plugin  或者 Pipeline Maven Integration Plugin ,搜索到了以后,点击直接安装

 安装完成后重启就好了。

2.构建maven项目

配置项目的Git仓库地址

构建触发器

我们是自己部署Git服务器(Bonobo Git Server),并没有用GitHub或者GitLab。

Bonobo Git Server 如果要用webHook的话,需要找到其仓库目录,找到对应项目的文件夹,然后添加post-receive(监听钩子)

文件内容如下,只是一个大概思路,配合Jenkins接口使用的。

  1. #!/bin/bash
  2. echo post-update23
  3. # exec git update-server-info
  4. while read oldrev newrev refname
  5. do
  6. echo post-update4
  7. branch=$(git rev-parse --symbolic --abbrev-ref $refname)
  8. " if [ ""master"" == ""$branch"" ]; then"
  9. " echo ""正在触发远程编译..."""
  10. "# exec ""xx-cmd"" http://{jenkins-user-name}:{jenkins-user-token}@jenkins.yourdomain.com/job/{jobName}/build?token={jobToken}"
  11. curl http://localhost:8081/job/test/build?token=token_test
  12. else
  13. "echo ""非master提交,无需编译"""
  14. fi
  15. done

构建环境

把maven打包好的Jar包上传到远程服务器

tly-business/tly-server/target/*.jar 这个是Jenkins工作空间的项目路径

/deploy/uploadJar  这是远端服务器的Jar包存放目录(自定义的)

发布步骤

选择 "Send files or execute commands over SSH",发送文件或者执行远程命令

执行Shell脚本,操作网站服务停止、备份旧Jar包、运行新Jar包

最后点击保存即可。然后回到控制面板,点击运行,就会开始自动构建——打包——部署。

执行后,点击任务详情,左下角就有每次构建的记录

到这里,就已经完成了Jenkins的自动化部署项目了。


总结

使用Jenkins自动化部署Spring Boot项目可以大大提高开发团队的效率和产品的交付速度。通过安装Jenkins、配置项目、构建触发器和构建步骤等步骤,你可以实现持续集成和持续部署的流程。Jenkins提供了丰富的插件和灵活的配置选项,可以适应不同的项目需求。通过监控构建过程和及时处理构建失败,你可以快速定位和修复问题。最后,通过自动化部署,你可以快速将应用程序部署到目标环境中,实现快速迭代和交付高质量的软件产品。使用Jenkins的自动化部署流程,你可以节省时间和精力,让开发团队专注于软件开发和质量保证,从而提升整体的开发效率和产品质量。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/551125
推荐阅读
相关标签
  

闽ICP备14008679号