微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PM2错误:使用生态系统文件时找不到模块

如何解决PM2错误:使用生态系统文件时找不到模块

我在使用 pm2 时遇到问题。

如果我用

启动我的应用程序
cd /my/path
pm2 start server.js

一切正常,但如果我使用 ecosystem.config.js 文件,则会出现以下错误

pm2 start ecosystem.config.js
Error: Cannot find module '/my/path/server.js'\n    at Function.Module._resolveFilename

我的生态文件配置如下

module.exports = {
    "apps": [{
        "name": "MyApp","script": "server.js","cwd": "/my/path" 
    }]
}

我尝试卸载 pm2、更新 npm 并重新安装 node_modules,但我仍然不明白为什么它说我的文件中缺少一个模块(特别是因为它在不使用生态系统文件时有效)

解决方法

阅读https://pm2.keymetrics.io/docs/usage/application-declaration/

Field   Type        Example         Description
name    (string)    “my-api”        application name (default to script filename without extension)
script  (string)    ”./api/app.js”  script path relative to pm2 start
cwd     (string)    “/var/www/”     the directory from which your app will be launched

我会尝试:

  • "script": "./server.js"(有点奇怪,我知道)
  • 删除 cwd 参数并设置 ./my/path/server.js
,

确保生态系统.config.js 位于您的项目的根目录以及您的服务器入口文件 (server.js) 中,并按如下方式指定您的脚本:

module.exports = {
    "apps": [{
        "name": "MyApp","script": "./server.js"
    }]
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。