千家信息网

Jenkins如何自动部署SpringBoot项目

发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,这篇文章给大家分享的是有关Jenkins如何自动部署SpringBoot项目的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、Jenkins安装下载jenkins安装包,m
千家信息网最后更新 2025年11月11日Jenkins如何自动部署SpringBoot项目

这篇文章给大家分享的是有关Jenkins如何自动部署SpringBoot项目的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1、Jenkins安装

下载jenkins安装包,maven安装包;打开xftp将安装包上传到服务器;弄maven镜像:进入maven的conf文件夹,vim打开setting.xml文件添加阿里云镜像;wq!保存退出。

               alimaven        aliyun maven                    http://maven.aliyun.com/nexus/content/groups/public/                central      

配置环境变量,打开/etc/profile文件,添加maven的环境变量;添加完成后记得执行source /etc/profile使环境变量生效。添加配置如下:MAVEN_HOME改成自己maven的安装目录

MAVEN_HOME=/usr/local/maven3export MAVEN_HOMEexport PATH=${PATH}:${MAVEN_HOME}/bin

运行 mvn -v验证maven是否安装成功

进入jenkins安装位置执行:java -jar jenkins.war &;启动;启动不成功,如果是端口占用,可以使用如下命令修改端口号并启动。执行之后生成一个密码,记下来

java -jar jenkins.war --ajp13Port=-1 --httpPort=8081 &

访问jenkins;如果访问不了,检查有没有在阿里云和宝塔开放上面使用端口的安全组;如果不用宝塔那么开发端口要使用命令:

firewall-cmd --zone=public --add-port=8081/tcp --permanent

访问http://服务器ip:端口号;出现jenkins登录页面,使用第5步记住的密码登录。

2、Jenkins插件安装

选择系统管理,插件管理

安装ssh插件,点击可选插件,搜索Publish Over SSH插件,安装Plublish Over SSH插件之前得先按照Infrastructure plugin for Publish Over X插件。否则报错。

插件中搜索gitee,安装插件。

搜索 Jackson 2 API 插件

搜索Java JSON Web Token (JJWT) 插件,Javadoc Plugin插件,JUnit Plugin

搜索Maven Integration plugin插件,找不到就去掉后面的plugin搜索

搜索 Publish Over SSH;SSH Build Agents plugin;SSH Credentials Plugin;SSH plugin;SSH2 Easy Plugin插件

插件在后面如果出现问题提示是插件出现问题,可以再百度一下缺少哪些插件再继续安装 3、Jenkins设置凭据 选择系统管理,点击Manage Gredentials,

点击Jenkins

点击全局凭据

3、点击添加凭据

添加服务器凭据,填写服务器登录用户名和密码

添加gitee用户凭据,填写gitee账号用户名密码添加gitee私人令牌的凭据,去gitee账号添加私人令牌,获取到私人令牌再添加凭据。

4、Jenkins环境配置

4.1、全局配置

选择Manage Jenkins系统管理,选择Global Tool Configuration全局工具配置进入配置java的一些配置环境

进入配置环境Maven和JDK并保存

这里的Maven选择服务器中下载的maven的路径,JDK选择服务器安装路径,找不到JDK安装路径可以看这里服务器jdk安装位置查询步骤:

jdk取消自动安装,选择服务器中jdk的安装地址

4.2、系统配置

返回选择Manage Jenkins系统管理,选择系统配置

Maven配置

jenkins URL配置

环境变量配置

SSH配置

Gitee配置

使用密钥方式登录目标发布服务器

输入命令:ssh-keygen -t rsa回车;出现东西直接复制()里面的东西粘贴;回车;一直回车知道出现图形。

进入 /root/.ssh文件夹下ls可以查看有三个东西,一个私钥,一个公钥,authorized_keys文件。使用命令:cat id_rsa.pub >> /root/.ssh/authorized_keys;文件将公钥追加到authorized_keys文件中。

在系统配置中的Public over SSH上的Path to key写上生成的ssh路径::/root/.ssh/id_rsa

选择Confing System,配置ssh服务,填写下面信息

点击Test之后如果出现错误以下错误,那么看看有没有设置了凭据:

5、Jenkins自动部署SpringBoot项目

新建一个springboot项目,写个demo测试可不可以运行,然后上传到gitee上新建tiem(新建任务),在Jenkins中新建任务,选择构建一个maven项目,然后确定

General设置Gitee项目链接

源码管理,在git那里点击高级,将+refs/heads/master:refs/remotes/origin/master +refs/pull/*/MERGE:refs/pull/*/MERGE 填入Refspec中

构建触发器,构建环境

系统设置中的SSH remote hosts

设置Pre Steps,Build,Build点击高级可以展开填写如下信息

设置Post Steps

shart.sh文件内容如下:

/root/www/javaweb/project/testJenkis/demo-0.0.1-SNAPSHOT.jar是项目编译后jar包出现在这里,jar命令是以项目的pom文件中的artifactId和version拼接起来的。

/root/www/javaweb/project/testJenkis/out.log是项目编译后日志文件位置。

#!/bin/bashsource /etc/profileexport JAVA_HOME PATH CLASSPATHJAVA_HOME=/usr/java/jdk1.8.0_121 #你自己的jdk路径PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATHexport BUILD_ID=dontKillMeecho "  =====关闭Java应用======"PROCESS=`ps -ef |grep java |grep -v grep|grep /root/www/javaweb/project/testJenkis/demo-0.0.1-SNAPSHOT.jar|awk '{print $2}'`for i in $PROCESSdo  echo "Kill the $1 process [ $i ]"  kill -9 $idoneecho "  =====启动Java应用======"nohup java -jar /root/www/javaweb/project/testJenkis/demo-0.0.1-SNAPSHOT.jar  > /root/www/javaweb/project/testJenkis/out.log 2>&1 &echo $! > savePid.txtcat savePid.txtrm  savePid.txt

然后给start.sh文件授权,命令如下: 777代表可读可写可执行

chmod -R 777 start.sh

应用保存任务设置点击立即构建,

可以选择控制台输出查看运行结果,如果出现错误,看提示修改,如果成功则可以访问项目中设置的接口路径。

6、遇到问题

1、重新启动jenkins忘记了登录密码

1. cd /root/.jenkins/users命令进入users文件夹,查看该文件下是否有用户文件夹,找到admin文件夹

2. 打开admin文件夹,发现里面有一个config.xml文件,打开改文件,找到passwordhash,可以先复制保存一下原来的passwordhash

3. 然后将passwordhash中的内容修改成如下内容并保存退出:`#jbcrypt:$2a$10$MiIVR0rr/UhQBqT.bBq0QehTiQVqgNpUGyWW2nJObaVAM/2xSQdSq`

4. 然后重启jenkins,如果重启失败,可能端口占用,估计是之前启动的jenkins还在运行,因此可以查看一下netstat -anp|grep 8081;端口是否占用,使用kill -9 进程id来杀死该进程。

5.然后重新之前启动jenkins命令:java -jar jenkins.war -ajp13Port=-1 -httpPort=8081

6. 访问jenkins使用123456密码进行登录。

7. 成功

2、 安装ssh插件出现问题

选择Manage Plugins ,可选插件,

下载ssh的时候出现以下错误

出现失败的原因是要先安装下面的插件,然后再安装就不会出错了。

3、构建项目出现如下错误:

在项目的pom.xml文件修改build为下面代码:记得得上传到gitee,或者直接在之前上传到gitee的项目那里修改pom

         compile                                    org.springframework.boot                spring-boot-maven-plugin                                                                                        org.projectlombok                            lombok                                                                                    

4、点击立即构建之后出现黄色,错误如下:

这个问题是找不到strat.sh的在哪里,仔细看看配置那里的构建后操作,一定要在根目录下创建shart.sh文件,而且这里配置路径的时候,要加上/root/不能直接www,否则就出现上面的错误。

5、如果编译成功,但是没有jar文件出现在服务器指定位置,查看out.log内容发现

然后试着修改指定jar位置的路径

修改前:

修改后:

jar是放在root目录下的www下,但是这里配置的时候不需要加上root,只有start.sh就必须要加上root,否则出错

成功解决问题

查看端口也运行了

查看浏览器也好了

7、用到的命令

  • maven -v回车;查看服务器是否安装maven

  • java -version;查看服务器是否有jdk环境

  • mkdir maven;创建文件夹

  • tar -zxvf 文件名;解压缩文件夹

  • whereis java;查看jdk安装目录

  • lsof -i:8080;查看端口8080是否被占用

  • kill -9 PID;杀死正在运行的进程

  • java jar jenkins.war --ajp13Port=-2 --httpPost=8080 &;启动jenkins程序

  • chmod -R 777 start.sh;给文件授权,777可读可写

  • pwd;显示当前目录

  • vim 文件;打开文件,i:编辑;esc:退出编辑;:wq!:保存退出

感谢各位的阅读!关于"Jenkins如何自动部署SpringBoot项目"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

文件 插件 配置 项目 服务 选择 服务器 命令 环境 凭据 文件夹 系统 路径 端口 错误 搜索 成功 内容 密码 问题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 学校 数据库 教育局 企业服务器环境容器化 数据库原理实验思考建议 软件开发实习生岗位是干嘛的 江苏省网络安全应急办公室 常用的人力资源管理数据库有哪些 amd服务器关闭超线程 数据库查出来的如何排序 coral数据库 财政局网络安全工程 erp软件开发职业规划 2020北京网络安全大会主题 服务器上的tomcat linux http服务器页面 国家安全体系网络安全 数据库迁移到阿里云 山西品质软件开发设施 炉石传说服务器数据互通吗 滁州网络安全应急指挥中心主任 四川语音网络技术服务推广 山东超市电商软件开发价格 网络安全第一手抄报视频 公安机关网络安全协议 衢州专业网络安全准入控制系统 公安部网络安全监管司 网络安全工程师证书考试须知 宝塔面板数据库管理页面打不开 网络安全个信息化工作总结 中国网络安全市场发展 数据库提高性能怎么做
0