【IDEA】自动部署SpringBoot Jar包到远程服务器并通过脚本启动jar

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

【IDEA】自动部署SpringBoot Jar包到远程服务器并通过脚本启动jar

文章目录

前言

IDEA版本: 2019.3

一.Deployment使用

IDRA原生的Deployment不需要离开idea就可以直接将项目部署到远程运行同时拥有远程视图窗口…

温馨小提示其它的一些连接软件还有如下等

1.打开连接远程服务器信息:Tools->Deployment->Configuration

2. 选择为SFTP并设置配置信息名称

  1. 配置连接远程服务器信息

配置好之后Tools->Deployment->Configuration->Browse Romote Host查看服务器文件目录文件

并且可以右键服务器上的文件进行增删改查

也可以通过项目右击Deployment上传文件到服务器此时文件会上传到之前 Deployment path 映射的目录下。

也可以直接通过idea查看映射到服务器上的文件和本地路径中的文件是否相同

二.ssh使用

Tools->Start SSH session 配置ssh开启远程终端连接

  1. 配置ssh信息

  2. 可沿用Deployment配置信息

三.启动脚本

将如下脚本拷贝到远程服务器jar包同目录然后运行sh start.sh命令启动脚本即可启动服务(此处有个坑如果自己在idea中编写脚本请将换行符设置为linux下的LF格式)。

#!/usr/bin/env bash
#!/bin/sh
RESOURCE_NAME=cnntest-1.0.0.jar #设置启动jar文件名
 
tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -15 $tpid
fi
sleep 5
tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill -9 $tpid
else
echo 'Stop Success!'
fi
 
tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'App is running.'
else
    echo 'App is NOT running.'
fi
 
rm -f tpid
nohup java -jar ./$RESOURCE_NAME  & tail -f nohup.out
echo $! > tpid
echo Start Success!

  1. chmod +x start.sh(第一次运行的时候获取一下超级管理员权限)然后以后每次运行直接./start.sh 即可

  2. 拷贝脚本的时候运行的时候如果报错应该是文件格式转换的问题

bash: ./a.sh: /bin/bash^M: bad interpreter: No such file or directory

可以 yum -y install dos2unix 然后 dos2unix start.sh重新运行脚本

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Spring服务器