編譯打包nodejs服務(wù)代碼如何部署到服務(wù)器
環(huán)境
express+node+mysql2+node14.x
使用NCC方式
下載打包依賴
npm i -g @vercel/ncc
編譯node文件 -m 打包壓縮 -o 導(dǎo)出文件夾
ncc build index.js -m -0 dist
在服務(wù)器或本地運(yùn)行編譯后的node文件
ncc run index.js
在網(wǎng)站可以直接訪問node服務(wù)接口,非404即成功
使用pkg方式
下載打包依賴
npm install -g pkg
編譯node文件,打包出來是一個.exe文件,雙擊運(yùn)行即可
pkg -t win start.js
在服務(wù)器或本地運(yùn)行編譯后的node文件
pkg index.js
目前pkg支持的平臺有l(wèi)inux、win、macos、alpine、freebsd、openbsd和sunos。
pkg . --output myapp .表示打包當(dāng)前目錄,--output指定輸出文件名,myapp表示輸出文件名。 如果想打包到不同平臺的可執(zhí)行文件,還需要加上--target參數(shù)。例如,打包成Windows平臺的執(zhí)行文件: pkg . --output myapp --target win
使node服務(wù)永久啟動,關(guān)閉終端不終止服務(wù)
使用npm安裝:
npm install -g forever
啟動應(yīng)用程序:
forever server.js
作為服務(wù):
forever start server.js
Forever因某種原因崩潰或停止時會永遠(yuǎn)重啟您的應(yīng)用.要將重新啟動限制為5,您可以使用:
forever -m5 server.js
列出所有正在運(yùn)行的進(jìn)程:
forever list
請注意括號中的整數(shù),并按如下所示使用它來停止進(jìn)程:
forever stop 0
重新啟動正在運(yùn)行的進(jìn)程:
forever restart 0
如果您正在處理應(yīng)用程序文件,則可以使用該-w參數(shù)在server.js文件更改時自動重新啟動:
forever -w server.js
停止所有運(yùn)行進(jìn)程
forever stopall
列出所有的用戶配置項
forever config
設(shè)置用戶配置項
forever set <key> <val>
清除用戶配置項
forever clear <key>
列出所有forever進(jìn)程的日志
forever logs
顯示最新的日志
forever logs <script|index>
自定義指標(biāo)到forever list
columns add <col>
刪除forever list的指標(biāo)
columns rm <col>
設(shè)置所有的指標(biāo)到forever list
forever columns set<cols>
刪除所有的forever歷史日志
forever cleanlogs
報錯整理
運(yùn)行命令forever server.js報錯
listen EADDRINUSE: address already in use :::3000
原因:3000端口被占用
解決方法:關(guān)閉3000進(jìn)程占用或改變當(dāng)前項目啟動端口號
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
如何在node.js中使用?JsonWebToken模塊進(jìn)行token加密
目前在web框架中最流行的身份驗證是使用jsonwebtoken,簡稱jwt.可以設(shè)置加密方式,過期時間,存放個人信息,逆解析,下面這篇文章主要給大家介紹了關(guān)于如何在node.js中使用?JsonWebToken模塊進(jìn)行token加密的相關(guān)資料,需要的朋友可以參考下2023-03-03
淺談node如何優(yōu)雅地獲取mac系統(tǒng)版本
這篇文章主要和大家聊聊node如何優(yōu)雅地獲取mac系統(tǒng)版本,文中有詳細(xì)的代碼示例和流程步驟,對我們學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-06-06

