環境:
centos linux release 7.5.1804 (core)
node-v14.15.0-linux-x64.tar.xz
一、node.js部署
解壓:tar -xvf node-v14.15.0-linux-x64.tar.xz
重新命名:mv node-v14.15.0-linux-x64 nodejs
新增環境變數(全域性執行):
vim /etc/profile
# 在最後新增如下內容,注意自己的路徑:
path=$node_home/bin:$path
# 使配置生效
source /etc/profile
檢測是否配置成功:node -v (能看到版本號就成功了)
二、pm2部署
官網:
功能: 內建負載均衡
後台執行
0 秒停機過載
具有 ubuntu 和 centos 的啟動指令碼
停止不穩定的程序(避免無限迴圈)
控制台檢測
提供 http api
遠端控制和實時的介面 api ( nodejs 模組,允許和 pm2 程序管理器互動 )
注意:如果你網路是通過**上網的,還需要做npm的**才可以用npm安裝
離線部署pm2:
1.先在有網的環境執行命令安裝好pm2,到安裝目錄將pm2資料夾打包(nodejs/lib/node_modules下)
可通過 npm config get prefix 檢視npm預設安裝目錄
2.將pm2包上傳到伺服器node相對應的目錄,我的目錄結構如下,
[root@localhost nodejs]# pwd
[root@localhost nodejs]# tree -d -l 3
.├── bin
├── include
│ └── node
│ ├── cppgc
│ ├── libplatform
│ ├── openssl
│ └── uv
├── lib
│ └── node_modules
│ ├── npm
│ └── pm2 # 這裡就是pm2放置路徑
└── share
├── doc
│ └── node
├── man
│ └── man1
└── systemtap
└── tapset
3.新增軟鏈結(全域性服務),命令安裝的不用配置
第一步:新增到node環境中,
第二步:新增到全域性環境,
安裝成功後啟動異常可以重啟下伺服器看看(reboot)
三、命令運用$ pm2 logs 顯示所有程序日誌
$ pm2 stop all 停止所有程序
$ pm2 restart all 重啟所有程序
$ pm2 reload all 0秒停機過載程序 (用於 networked 程序)
$ pm2 stop 0 停止指定的程序
$ pm2 restart 0 重啟指定的程序
$ pm2 startup 產生 init 指令碼 保持程序活著
$ pm2 web 執行健壯的 computer api endpoint (http://localhost:9615)
$ pm2 delete 0 殺死指定的程序
$ pm2 delete all 殺死全部程序
四、配置pm2啟動檔案
在專案根目錄新增乙個processes.json:
內容如下:
「scripts」:,
通過npm run pm2來啟動。
nodejs的PM2程序管理
pm2 node.js程序管理工具 npm i pm2 g 守護程序 服務掛掉後自動重啟 多程序 更好的裡有cpu和記憶體 pm2使用 啟動服務 在package.json的scripts中新增 prd cross env node env production pm2 start bin www ...
使用pm2管理nodejs應用
pm2是乙個node.js的程序管理器,因為nodejs的單程序特性,儲存程序不死掉,自動過載是十分重要的,目前只支援liunx平台 1.安裝pm2 前提安裝了node.js npm install pm2 g 2.用pm2啟動nodejs應用 每乙個應用取乙個應用名稱,不要用系統自己分配應用名稱 ...
離線安裝PM2
因為要部署應用的機器沒有公網連線,所以直接npm install pm2是不可能了,簡單記錄一下怎麼離線安裝pm2 執行 npm install pm2 g 安裝pm2 執行 npm config get prefix,看一下這台機器的npm預設全域性安裝目錄在哪,然後去這個目錄下面的 lib no...