这跟树莓派 ssh 同样的问题吧,以前貌似用 nodemon 解决。搜了一下记混了。
nodemon 一般只在开发时使用,它最大的长处在于 watch 功能,一旦文件发生变化,就自动重启进程。
https://juejin.cn/post/7035266324670447623
使用 nohup
命令或者 screen
工具可以让 Express 应用在后台运行,即使断开 SSH 连接也不会终止。例如:
nohup node app.js &
或者
screen -S myapp
node app.js
# Press "Ctrl+A" and then "Ctrl+D" to detach from the screen
另外,使用 PM2 这样的进程管理工具也是一个不错的选择,它可以帮助你管理 Node.js 进程,保证应用持续稳定运行。
使用 PM2 来管理 Node.js 应用的步骤如下:
- 通过 npm 安装 PM2:
npm install pm2 -g
- 进入要启动的应用目录,使用 PM2 启动应用:
pm2 start app.js
其中 app.js
是你要启动的应用的入口文件。启动后,PM2 会自动为应用创建一个进程,并在后台运行。
- 使用 PM2 监控应用状态:
pm2 monit
这个命令可以实时监控应用的 CPU、内存等系统资源使用情况,以及应用的日志输出等信息。
- 使用 PM2 停止应用:
pm2 stop app
其中 app
是应用的名称或者 ID。
除了上述基本功能外,PM2 还支持应用自动重启、负载均衡、多进程管理等高级特性。可以通过 PM2 的官方文档来学习更多用法和配置参数。