> 文档中心 > IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目


1、编写启动脚本

root/jars目录下编写一个自定义的启动脚本

vim /root/jars/start.sh

内容:

#!/bin/shexport LANG="en_US.UTF-8"cd /root/jarsrunMessage=`ps aux | grep \`cat pidfile.txt\``projectStartCommand="/usr/local/java/jdk1.8.0_131/bin/java -jar demo.jar"if [[ $runMessage == *$projectStartCommand* ]]then    echo "Application has starting ,restarting..."    kill -9 `cat pidfile.txt`    nohup /usr/local/java/jdk1.8.0_131/bin/java -jar demo.jar -java.tmp.dir=/root/jars/temp >/dev/null 2>&1 & echo $! > pidfile.txtelse    echo "Application has stopped ,starting..."    nohup /usr/local/java/jdk1.8.0_131/bin/java -jar demo.jar -java.tmp.dir=/root/jars/temp >/dev/null 2>&1 & echo $! > pidfile.txtfi

脚本说明:

  • cd /root/jars:jar包所在目录
  • projectStartCommand:脚本的前缀命令行
  • /usr/local/java/jdk1.8.0_131/bin/java:jdk路径
  • demo.jar:需要运行的jar包名称
  • pidfile.txt:pid存放位置

2、编写停止脚本

root/jars目录下编写一个自定义的停止脚本

vim /root/jars/stop.sh

内容:

#!/bin/shcd /root/jarsPID=$(cat pidfile.txt)if [ ${PID} ]; then    echo 'Application is stpping...'    echo kill $PID DONE    kill $PIDelse    echo 'Application is already stopped...'fi

脚本说明:

  • cd /root/jars:jar包所在目录

3、IDEA安装Alibaba插件

IDEA中安装Alibaba Cloud Toolkit插件
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

4、 配置远程服务器

在IDEA下方的Alibaba Cloud View点击Add Host进行服务器配置
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

5、配置推送

在IDEA顶部,编辑配置
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目
Run/Debug Configurations页面选择Deploy to Host
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目
进行Upload File配置,选择需要上传的Jar包,并且选择需要上传服务器的IP地址、设置上传jar目录、设置执行脚本:
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

Upload File配置之前,可以进行Maven配置,实现自动打包并且再打包后,自动上传jar包到服务器:
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

Maven配置中,选择mvn执行的工程,以及mvn命令
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

6、部署测试

在IDEA中运行:
在这里插入图片描述
MVN执行情况:
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目
文件上传情况:
IDEA+Alibaba插件+自定义脚本实现自动化部署SpringBoot(jar包)项目

在完成文件上传后,会自动执行设置的脚本实现了自动化部署