You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PM2将Node.js应用以守护进程方式启动?

嘿,作为Node.js新手,刚接触PM2踩点小坑太正常啦~我来帮你快速搞定这个问题!

你之所以用pm2 node start启动失败,核心原因是PM2的命令格式用错了——PM2本身就是专门管理Node.js进程的工具,不需要在命令里额外加node,而且它需要直接指定入口文件或者正确的启动脚本命令。

下面分两种常见情况给你对应解决方案:

情况1:你的入口文件就是start.js

你说执行node start能启动应用,说明当前目录下应该有个start.js文件(node命令后面跟的是文件名,这里省略了.js后缀)。那用PM2启动的正确命令是:

pm2 start start.js

如果想给你的应用起个好记的名字(方便后续管理),可以加--name参数:

pm2 start start.js --name "我的Node应用"

启动后,用pm2 list就能查看所有运行的PM2进程,确认你的应用是否正常跑起来了。

情况2:node start其实是执行npm的start脚本

如果你的package.json里配置了类似这样的启动脚本:

{
  "scripts": {
    "start": "node start.js"
  }
}

那你习惯用的node start可能是npm start的简化说法?没关系,PM2也能直接执行npm的start脚本,命令是:

pm2 start npm -- run start

这里的--是用来分隔PM2参数和npm参数的,确保命令能正确传递。

实用的PM2后续管理命令

启动成功后,这些命令能帮你轻松管理进程:

  • 查看所有进程状态:pm2 list
  • 查看应用实时日志:pm2 logs <应用名/进程ID>
  • 重启应用:pm2 restart <应用名/进程ID>
  • 停止应用:pm2 stop <应用名/进程ID>
  • 设置开机自启:pm2 startup(执行后按照终端提示的命令完成配置即可)

内容的提问来源于stack exchange,提问作者Babr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:18:02