编译打包nodejs服务代码如何部署到服务器
环境
express+node+mysql2+node14.x
使用NCC方式
下载打包依赖
npm i -g @vercel/ncc
编译node文件 -m 打包压缩 -o 导出文件夹
ncc build index.js -m -0 dist
在服务器或本地运行编译后的node文件
ncc run index.js
在网站可以直接访问node服务接口,非404即成功
使用pkg方式
下载打包依赖
npm install -g pkg
编译node文件,打包出来是一个.exe文件,双击运行即可
pkg -t win start.js
在服务器或本地运行编译后的node文件
pkg index.js
目前pkg支持的平台有linux、win、macos、alpine、freebsd、openbsd和sunos。
pkg . --output myapp .表示打包当前目录,--output指定输出文件名,myapp表示输出文件名。 如果想打包到不同平台的可执行文件,还需要加上--target参数。例如,打包成Windows平台的执行文件: pkg . --output myapp --target win
使node服务永久启动,关闭终端不终止服务
使用npm安装:
npm install -g forever
启动应用程序:
forever server.js
作为服务:
forever start server.js
Forever因某种原因崩溃或停止时会永远重启您的应用.要将重新启动限制为5,您可以使用:
forever -m5 server.js
列出所有正在运行的进程:
forever list
请注意括号中的整数,并按如下所示使用它来停止进程:
forever stop 0
重新启动正在运行的进程:
forever restart 0
如果您正在处理应用程序文件,则可以使用该-w参数在server.js文件更改时自动重新启动:
forever -w server.js
停止所有运行进程
forever stopall
列出所有的用户配置项
forever config
设置用户配置项
forever set <key> <val>
清除用户配置项
forever clear <key>
列出所有forever进程的日志
forever logs
显示最新的日志
forever logs <script|index>
自定义指标到forever list
columns add <col>
删除forever list的指标
columns rm <col>
设置所有的指标到forever list
forever columns set<cols>
删除所有的forever历史日志
forever cleanlogs
报错整理
运行命令forever server.js报错
listen EADDRINUSE: address already in use :::3000
原因:3000端口被占用
解决方法:关闭3000进程占用或改变当前项目启动端口号
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Node.js中package.json中库的版本号(~和^)
这篇文章主要介绍了Node.js中package.json中库的版本号(~和^),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2019-04-04
node.js使用npm 安装插件时提示install Error: ENOENT报错的解决方法
这篇文章主要介绍了node.js使用npm 安装插件时提示install Error: ENOENT报错的解决方法,需要的朋友可以参考下2014-11-11
nvm版本导致npm install报错Unexpected token '.'的解决办法
最近做项目遇到npm install 的问题,下面这篇文章主要给大家介绍了关于nvm版本导致npm install报错Unexpected token '.'的解决办法,文中通过图文介绍的非常详细,需要的朋友可以参考下2022-07-07


最新评论