Spring Boot 部署腳本

寫在前面的話

這裏是一個在Linux環境上,使用Git+Maven實現Spring Boot項目的快捷部署和啓動的腳本,推薦給JavaEE開發和運維同學們。

乾貨

  • 在項目跟路徑上新建一個 deploy.sh文件
vim deploy.sh
  • 把這段腳本改吧改吧黏貼進去
dir=/data/demo-api
port=8899
project=demo-api
version=1.0.0.BETA

cd $dir
git pull origin mining
mvn clean package -Dmaven.test.skip=true
if [ -f $dir/target/*.jar ];then
  # CentOS
  # pid=`/usr/sbin/lsof -n -P -t -i:$port`
  # Ubuntu
  pid=`/usr/bin/lsof -n -P -t -i:$port`
  echo "PID:"$pid
  [ $pid ] && kill $pid
  echo "waiting..."
  nohup java -jar -Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m $dir/target/$project-$version.jar > $project.out &
  tail -f $project.out
else
  echo "deploy fail!"
fi

dir是項目跟路徑,就是clone完成後的.git、src和pom.xml所在的文件夾的絕對路徑;
port是項目的server.port,這裏是用來找PID殺進程的;
projectversion用來指定啓動的Jar包,和nohup輸出文件,我的項目打包後是demo-api-1.0.0.BETA.jar,輸出到demo-api.out,在.gitignore中配置忽略項*.out,所以在項目路徑下的demo-api.out可以不受Git管理。

  • 設置權限

開發環境是MacOS或Linux的同學可以直接在本地的Git倉庫加好權限,Windows黨同學建議用Linux環境加好權限再push一次。

chmod 755 deploy.sh

755是給root用戶的,根據具體情況而定,測試環境的話也可以777

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章