Jenkins编译一个Spring Boot项目并通过SSH推送到远程

Posted 刘岗强

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins编译一个Spring Boot项目并通过SSH推送到远程相关的知识,希望对你有一定的参考价值。

上一章讲了发布一个项目到远程的Tomcat上,但是随着现在微服务Spring Cloud的热度很多小伙伴们都转向了Spring Boot。本章就介绍一下如何部署一个Spring Boot项目并通过脚本方式启动

本章需要用到的插件:Publish Over SSH 安装完成之后我们先配置SSH 路径 系统管理>系统设置>Publish over SSH


新增一个SSH Servers


Name:名字 随便取

Hostname:主机地址

Username:用户名

Remote Directory:根目录(这里就决定了把jar上传到哪里)

你会发现没有密码,点高级然后勾选这个

然后就出现密码了


完整的配置如下 其他参数根据你的需要自己配置


到这里SSH的配置就结束了 接下来还是新建一个Job 选择一个Spring Boot应用

在Post Steps中选择


然后出现一个页面 如下


Name:选择你配置好的SSh Server

Source files:jar所在地址

Remove prefix:需要移除的前缀 我们只需要jar 所有把target移除了

Remote directory:文件上传的位置 这里和SSH中的Remote Directory有关系 如果SSH中配置的是/home/run/ 这里配置的是/develop/

那么最终文件会在/home/run/develop/中

Exec command:shell命令 这里我的脚本命令含义未杀掉之前在运行的这个应用的进程然后重启

source /etc/profile
project=你的应用名
dir=你应用存放的目录
pid=`ps -ef | grep $dir$project | grep -v grep | awk 'print $2'`
if [ -n "$pid" ]
then
   kill -9 $pid
fi
nohup java -Xms64m -Xmx512m -XX:PermSize=32m -XX:MaxPermSize=512m -jar $dir$project --spring.profiles.active=dev >/dev/null 2>&1&
然后保存 然后构建 本章Over

以上是关于Jenkins编译一个Spring Boot项目并通过SSH推送到远程的主要内容,如果未能解决你的问题,请参考以下文章

使用Jenkins + Gitlab自动构建Spring Boot项目,并部署到远程服务器上

python自动化持续集成:5.Jenkins集成Spring Boot项目源码打包部署流程

Spring Boot(十六):使用Jenkins部署Spring Boot

spring boot(十六)使用Jenkins部署spring boot

Jenkins部署Spring boot项目失败

SpringBoot Web项目依赖分析