溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Spring?Boot?Jar?包部署腳本的實例分析

發(fā)布時間:2021-12-20 09:05:46 來源:億速云 閱讀:140 作者:柒染 欄目:開發(fā)技術(shù)

這篇文章給大家介紹Spring Boot Jar 包部署腳本的實例分析,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

當(dāng)使用 Spring Boot 進(jìn)行開發(fā)時,它可以將項目打包成 Jar 包進(jìn)行部署,但是我們的部署環(huán)境一般都是 Linux,每次手寫腳本很煩人,所以我提供了一個簡單的腳本,用于部署 Spring Boot 生成的 Jar 包。

腳本內(nèi)容很簡單,就是通過端口 kill 掉舊的進(jìn)程,并將新的 Jar 包部署上去。

#!/bin/bash
port=8090
jar_name="上傳到服務(wù)器上的 Jar 包名稱"
deployed_jar="服務(wù)器上部署的 Jar 包名稱"
# Spring Boot 的 profile
active_profile=real
# 備份目錄
backup_folder="/home/backup"
#根據(jù)端口號查詢對應(yīng)的pid
pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }');
#殺掉對應(yīng)的進(jìn)程
if [  -n  "$pid"  ];  then
    kill  -9  $pid;
fi
echo "服務(wù)已停止"
echo "備份文件:"
timestamp=`date "+%Y%m%d%H%M%S"`
if [ ! -d "${backup_folder}" ]
then
  mkdir -p "${backup_folder}"
fi
mv ${deployed_jar} ${backup_folder}/${deployed_jar}-${timestamp}.jar
mv ${jar_name} ${deployed_jar}
nohup java -jar ${deployed_jar} --spring.profiles.active=${active_profile} &
echo "服務(wù)已啟動"

知識點擴(kuò)展:

springboot的jar包部署shell腳本

#!/bin/sh
ID=`ps -ef|grep scada-server-report-smt-0.0.1-SNAPSHOT.jar|grep -v grep|awk '{print $2}'`
echo $ID
echo "---------------"
if [ -z $ID ]; then
	echo "無殺死的進(jìn)程"
else
	for id in $ID
	do
	kill -9 $id
	echo "killed $id"
	done
fi
sleep 5
nohup java -Xms512m -Xmx512m -jar scada-server-report-smt-0.0.1-SNAPSHOT.jar > /dev/null 2>&1 &
echo "啟動成功"

關(guān)于Spring Boot Jar 包部署腳本的實例分析就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI