1. 程式人生 > >idea自動部署springboot jar包到遠端伺服器並通過指令碼啟動jar

idea自動部署springboot jar包到遠端伺服器並通過指令碼啟動jar

 1.連線遠端伺服器:Tools->Deployment->Configuration


2.1配置好之後開啟遠端服務就可以直接在idea中進行拖拽檢視

2.2.也可以通過專案右擊deployment上傳jar到伺服器,此時jar會上傳到第一步圖三中配置的目錄下。

2.3.此處後期也可以直接通過idea檢視伺服器上jar和本地開發中的jar包異同

如圖配置檔案中一行配置本地和伺服器不同可直接通過idea檢視到,再也不用去伺服器下載該jar包到本地用壓縮工具查看了,哈哈。

3.配置ssh直接進行遠端伺服器操作

4.將如下指令碼拷貝到遠端伺服器jar包同目錄,然後再通過上圖控制檯執行sh start.sh命令啟動指令碼即可啟動服務(此處有個坑,如果自己在idea中編寫指令碼請將換行符設定為linux下的LF格式)。

#!/usr/bin/env bash
#!/bin/sh
RESOURCE_NAME=cnntest-1.0.0.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!

如上,就可以做到僅通過idea將一個jar包部署到伺服器並執行,簡單,高效。

僅作記錄。