jenkins 部署node應用



1.安裝插件

部署應用首先需要安裝nodejs 的插件,我們打開Jenkins頁面,進入系統管理->插件管理->可選插件,搜索nodejs插件進行安裝。(我們這里已經安裝過了,在已安裝頁面就可以找到這個插件)
插件安裝

2.Node js安裝

進入系統管理->全局工具配置 進入全局工具配置頁面,找到Node js選項,點擊Nodejs安裝,填入別名及安裝方式(這里選擇自動安裝,版本選擇為node12.7)
nodejs 安裝

3.遠程服務器配置

進入系統管理->系統設置,進入系統設置頁面,往最下面划,然后新增SSH Server ,填入對應的服務器信息,點擊保存即可
ssh server 添加

4.添加任務

  • 點擊新建任務選項
    新增任務
  • 輸入任務名稱,選項選擇為 "構建一個自由風格的軟件項目",點擊確認,然后進入到任務配置頁面
    任務表單

5.項目基礎構建

如果有構建參數,及選擇參數化構建過程,這里需要安裝插件(Git Parameter Plug-In),填入你要構建的參數即可。

6.源碼管理

在源碼管理里選擇git源碼管理(如果是svn管理的代碼,需要安裝svn插件),並且輸入代碼倉庫地址,分之名稱,以及認證(認證方式有多種,秘鑰、用戶名密碼,可以根據自己的需要來做調整)
git源碼管理
git 認證

7.Nodejs環境構建

  • 在環境構建選擇Provide Node & npm bin/ folder to PATH 這個選項,然后在nodeJs Installation 選擇你剛剛配置的nodejs,我們這里選擇我們剛剛安裝的js node12.7
  • 點擊增加構建步驟,選擇"執行shell"選項,輸入node應用編譯命令,並且打包
npm install 
npm run build
tar -zcvf dist.tar.gz dist

環境構建

8.將構建好的代碼發送到遠程服務器

在構建后的操作選項里點擊 "增加構建后操作步驟",然后選擇"send build artifacts over ssh“,
然后填寫構建表單,包括服務器名稱,傳輸的文件,遠程目錄地址,以及相應的啟動腳本,具體的可以參考下圖(因為我們的node應用都是用doker部署的,docker-compose 在應用打包時打包到dist下了,所以在Exec command下寫對應的shell腳本,解壓啟動即可)

## 進入文件夾
cd /usr/webapp/myapp
## 創建臨時文件夾
mkdir ./temp
##將傳送過來的壓縮包解壓到temp 目錄下
tar xzf dist.tar.gz -C ./temp
## 創建備份文件夾
mkdir ./web_bak
## 刪除備份文件夾下的備份數據
rm -rf ./web_bak/dist
## 備份數據
mv ./dist ./web_bak
## 檢測是否替換docker-compose 文件
if [ ! -f "./docker-compose.yml" ]; then
	mv  ./temp/dist/docker-compose.yml ./docker-compose.yml
fi
## 移動對應的目錄
mv  ./temp/dist dist
## 刪除臨時目錄
rm -rf ./temp
## 重新啟動
docker-compose down
docker-compose up -d

發布

附件

附一份前端的簡單docker-compose 文件

version: '3.7'
services:
 myapp:
   image: nginx:1.17.1-alpine
   container_name: myapp
   environment:
     - TZ=Asia/Shanghai
   ports:
     - "80:80"
   volumes:
     - "./dist:/usr/share/nginx/html"
     - "./logs:/var/log/nginx/"
   restart: always
   network_mode: "bridge"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM