1. 程式人生 > 其它 >pm2啟動程式後,前端頁面沒有更新

pm2啟動程式後,前端頁面沒有更新

1. jenkins構建完成後,前端頁面沒有更新

開發在程式碼裡面刪除了一個電話號碼,通過jenkins發版後,發現前端頁面的號碼依然存在。
去jenkins的工作目錄下對了程式碼,發現是最新的程式碼。
檢視jenkins配置,發現是用pm2啟動的前端程式。

2. 檢視pm2前端配置

[root@hdc-monitor clearway-website-ui]# /mnt/node-v8.9.1-linux-x64/bin/pm2 describe 0
 Describing process with id 0 - name clearway-pc 
┌───────────────────┬─────────────────────────────────────────────────────┐
│ status            │ online                                              │
│ name              │ clearway-pc                                         │
│ version           │ N/A                                                 │
│ restarts          │ 240                                                 │
│ uptime            │ 27m                                                 │
│ script path       │ /usr/bin/npm                                        │
│ script args       │ start                                               │
│ error log path    │ /root/.pm2/logs/clearway-pc-error.log               │
│ out log path      │ /root/.pm2/logs/clearway-pc-out.log                 │
│ pid path          │ /root/.pm2/pids/clearway-pc-0.pid                   │
│ interpreter       │ node                                                │
│ interpreter args  │ N/A                                                 │
│ script id         │ 0                                                   │
│ exec cwd          │ /app/jenkins_home/workspace/柯美利/clearway-website-ui │ # 通過這個發現,現在jenkins前端專案的路徑,跟這個路徑不同,所以瀏覽前端頁面,發現配置沒有生效(因為後面移動過jenkins上前端專案的位置,所以跟這裡對不上)。
│ exec mode         │ fork_mode                                           │
│ node.js version   │ 8.9.1                                               │
│ node env          │ N/A                                                 │
│ watch & reload    │ ?                                                   │
│ unstable restarts │ 0                                                   │
│ created at        │ 2021-06-29T07:23:13.757Z                            │
└───────────────────┴─────────────────────────────────────────────────────

3. 解決辦法

pm2啟動的前端程式都會生成一個埠,這個埠是前端寫在配置檔案中的。為了不影響現有頁面訪問,讓開發重新配置一個埠,再重新構建。
構建完成後去到對應前端的目錄下(jenkins上),重新建立一個前端程式
pm2 start npm --name "gcw_edi" -- run start # 注意這個run 後面的start,該引數要問前端拿,不一定都是start,也有可能是別的。
重新啟動後,可以通過pm2 logs pid,檢視程式是否正常啟動,然後通過netstat -lntup檢視埠。最後更改nginx代理地址的埠即可。