使用Jenkins远程(Linux)部署SpringBoot项目
1.下载jenkins
2.配置Jenkins
①在控制面板,点击 系统管理--全局工具配置:
JDK:别名:自定义 ;JAVA_HOME:参数同JDK配置环境变量时的参数
Maven:参数同上
②系统管理--插件管理
插件管理:过滤,输入插件名字 安装;该插件可以将生成的jar/war包发送到远程服务器。
③系统管理--系统设置
在Publish over SSH新增SSH server;本人SSH Server 为FTP服务器。
SSH server配置:
Name:自定义
Hostname:FTP服务器ip地址
Username:FTP服务器登陆用户名 (例:test)
Remote Diectory:未填写,文件上传默认存在 /home/ Username:FTP服务器登陆用户名 (例:/home/test)
点击:高级 ;勾选:Use password authentication, or use a different key;填写上述FTP账号对应密码。
其他可以不填写,点击测试;出现success,则配置成功,保存。
3.使用Jenkins进行SpringBoot项目部署测试
①环境准备:
远程服务器:操作系统Linux Tomcat、JDK已安装配置,FTP服务器搭建成功
②测试实施
新建任务:输入任务名:自定义
点击构建*风格项目
下拉至底部,点击保存。
填写信息:
源码管理:填写项目的git地址
构建:选择 调用顶层Maven;选择之前配置的maven,目标:输入指令
构建后操作:
Source file:生成jar包的文件路径
Remove prefix:移除前缀,发送到ftp服务器的就为target目录下的 某.jar文件
Remote directory:可以不写/填写的话:自定义,远程jar包的路径将为/home/ftp用户名/自定义路径
Exec command:执行脚本,运行项目。chmod 777 *.sh 为脚本执行授权。(本人直接将脚本放在了/home/..下,与传过去的jar包同一目录下)
脚本:
#!/bin/sh
rm -f tpid
APP_NAME=test-0.0.1-SNAPSHOT
APP_JAR=$APP_NAME".jar"
##nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定 了输出文件。这里指定输出文件在为./test-1.0-SNAPSHOT.log
nohup java -jar $APP_JAR > $APP_NAME".log" 2>&1 &
echo $! > $APP_NAME".tpid"
echo $APP_NAME Start Success!
点击保存--立即构建--状态--找到最新构建--点进去--点击 控制台输出
最后显示启动成功,FInished:SUCCESS 部署成功。
访问验证:访问,打印成功。说明部署成功。