1. 程式人生 > 程式設計 >IDEA Spring Boot 自動化構建+部署的實現

IDEA Spring Boot 自動化構建+部署的實現

本文所有操作都基於Alibaba cloud Toolkit進行操作。

1.外掛安裝

在外掛市場中下載安裝。

  • 在IntelliJ IDEA頂部選單欄中選擇File>Settings。

在Settings對話方塊的左側導航欄中單擊Plugins。

在Plugins區域單擊Marketplace。

在搜尋欄中輸入Alibaba Cloud Toolkit。

Search Results區域會出現Alibaba Cloud Toolkit,單擊Install。

IDEA Spring Boot 自動化構建+部署的實現

等待下載、安裝完成後,單擊Restart IDE。

填寫邀請碼

IDEA Spring Boot 自動化構建+部署的實現

邀請碼:6ERULV

2.配置伺服器地址

新增伺服器。

在IntelliJ IDEA頂部選單欄中選擇Tools>Alibaba Cloud>Alibaba Cloud View>Host。
在彈出的Host頁籤中單擊Add Host。

IDEA Spring Boot 自動化構建+部署的實現

在Add Host對話方塊中設定Host List、Username、Password和Tag等引數,完成後單擊 Add。

IDEA Spring Boot 自動化構建+部署的實現

完成引數設定後,可以單擊Test Connection來測試是否能成功連線伺服器。

3.部署應用

在IntelliJ IDEA頂部選單中選擇Alibaba Cloud>Deploy to Host...。
在Deploy to Host對話方塊設定部署引數,然後單擊Run。

IDEA Spring Boot 自動化構建+部署的實現

部署引數說明如下表所示:

引數

描述

File

  • Maven Build:若當前工程採用Maven構建,可以直接構建並部署。
  • Upload File:若當前工程不是採用Maven構建,或在本地已存在打包好的部署檔案,可以選擇並上傳本地的部署檔案。
  • Gradle Build:若當前工程採用Gradle構建,選擇此項來構建並部署。

Target Host
在下拉列表中選擇Tag,然後在該Tag中選擇要部署的伺服器。

Target Directory
輸入在伺服器上的部署路徑,如/root/tomcat/webapps。

Command
輸入應用啟動命令,如sh /root/restart.sh。

3.如果出現如下圖,就說明檔案正在上傳中

IDEA Spring Boot 自動化構建+部署的實現

表示已經上傳完畢

IDEA Spring Boot 自動化構建+部署的實現

另外在附送一個啟動|重啟指令碼

#!/bin/bash 
#這裡可替換為jar包名字
APP_NAME=xxx-1.0.jar
#根據實際情況修改引數
JVM="-server -Xms2g -Xmx2g -Xmn512m -XX:PermSize=128M -XX:MaxNewSize=128m -XX:MaxPermSize=25zh6m -Xss256k -Djava.awt.headless=true -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -Xloggc:/logs/xxx-server/GC/xxx-gc.log"
#APPFILE_PATH="-Dspring.config.location=/usr/local/config/application.properties"
#使用說明,用來提示輸入引數 
usage() { 
 echo "Usage: sh 執行指令碼.sh [start|stop|restart|status|log|backup]" 
 exit 1 
} 
#檢查程式是否在執行 
is_exist(){ 
 pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' ` 
 #如果不存在返回1,存在返回0 
 if [ -z "${pid}" ]; then 
  return 1 
 else 
  return 0 
 fi 
} 

#啟動方法 
start(){ 
 is_exist 
 if [ $? -eq "0" ]; then 
  echo "${APP_NAME} is already running. pid=${pid} ." 
 else 
  #nohup java $JVM -jar $APPFILE_PATH $APP_NAME > /dev/null 2>&1 
    #後臺啟動jar包,且控制環境變數,根據實際情況修改吧。
  nohup java $JVM -jar $APP_NAME --spring.profiles.active=prod > /dev/null 2>&1 & 
 fi
} 

#停止方法 
stop(){ 
 is_exist 
 if [ $? -eq "0" ]; then 
  kill -9 $pid 
 else 
  echo "${APP_NAME} is not running" 
 fi 
} 

#輸出執行狀態 
status(){ 
 is_exist 
 if [ $? -eq "0" ]; then 
  echo "${APP_NAME} is running. Pid is ${pid}" 
 else 
  echo "${APP_NAME} is NOT running." 
 fi 
} 
#重啟 
restart(){ 
 stop 
 start 
} 

#日誌
log(){
  # 輸出實時日誌
 tail -n 100 -f /logs/fdc-server/fdc-server.log
}

#備份
backup(){
  #根據需求自定義備份檔案路徑。
 BACKUP_PATH=/usr/local/webapps/backup/xxx-server/
  #獲取當前時間作為備份檔名
 BACKUP_DATE=`date +"%Y%m%d(%H:%M:%S)"`
 echo 'backup file ->'$BACKUP_PATH$BACKUP_DATE'.jar'
  #備份當前jar包
 cp -r /usr/local/webapps/$APP_NAME $BACKUP_PATH$BACKUP_DATE'.jar'
}

#根據輸入引數,選擇執行對應方法,不輸入則執行使用說明 
case "$1" in 
 "start") 
  start 
  ;; 
 "stop") 
  stop 
  ;; 
 "status") 
  status 
  ;; 
 "restart") 
  restart 
  ;; 
 "log") 
  log 
  ;; 
 "backup") 
  backup 
  ;; 
 *) 
usage 
;; 
esac

到此這篇關於IDEA Spring Boot 自動化構建+部署的實現的文章就介紹到這了,更多相關IDEA Spring Boot 自動化構建內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!