SpringBoot實戰電商專案mall(25k+star)地址:github.com/macrozheng/…
摘要
本文是mall
專案的專屬Jenkins自動化部署方法。
Jenkins的基本使用
關於Jenkins的基本使用可以參考:使用Jenkins一鍵打包部署SpringBoot應用,就是這麼6!
執行指令碼準備
首先我們先把需要遠端執行的指令碼準備好。
-
指令碼檔案都存放在了
mall
專案的/document/sh
目錄下: -
上傳指令碼前在IDEA中修改所有指令碼檔案的換行符格式為
LF
,否則指令碼會無法執行;

- 將所有指令碼檔案上傳到指定目錄,這裡我們上傳到
/mydata/sh
目錄下;

- 將所有指令碼檔案都修改為可執行檔案:
chmod +x ./mall-*
複製程式碼

Jenkins中建立任務
接下來我們將通過在Jenkins中建立任務來實現自動化部署。由於我們的
mall
是個多模組的專案,部署上面和曾經的單模組專案還是有所區別的。
mall-admin
由於各個模組的執行任務的建立都大同小異,下面將詳細講解mall-admin模組任務的建立,其他模組將簡略講解。
- 首先我們選擇
構建一個自由風格的軟體專案
mall-admin,然後配置其Git倉庫地址,這裡我直接使用了Gitee上面的地址:

- 之後我們建立一個構建,構建
mall
專案中的依賴模組,否則當構建可執行的服務模組時會因為無法找到這些模組而構建失敗;
# 只install mall-common,mall-mbg,mall-security三個模組
clean install -pl mall-common,mall-mbg,mall-security -am
複製程式碼
- 依賴專案構建示意圖:

- 再建立一個構建,單獨構建並打包mall-admin模組:

- 新增一個遠端SSH執行任務,去執行mall-admin的執行指令碼:

- 點選儲存,完成mall-admin的執行任務建立。
mall-portal
mall-portal和其他模組與mall-admin建立任務方式基本一致,只需修改構建模組時的pom.xml檔案位置和執行指令碼位置即可。
- 我們可以直接從mall-admin模組的任務複製一個過來建立:

- 修改第二個構建中的pom.xml檔案位置,改為:${WORKSPACE}/mall-portal/pom.xml

- 修改第三個構建中的SSH執行指令碼檔案位置,改為:/mydata/sh/mall-portal.sh

- 點選儲存,完成mall-portal的執行任務建立。
mall-search
參考mall-admin和mall-portal的建立即可。
任務建立完成

專案地址
公眾號
mall專案全套學習教程連載中,關注公眾號第一時間獲取。
