【发布时间】:2021-07-30 03:24:01
【问题描述】:
几乎是这样的: Node APP running under PM2 unable to run child process
但没有答案(并且 OP 的重启对我不起作用)
我有以下问题:
NodeJS / Express 应用程序
以npm run dev 运行而不将其转换为后台进程时工作正常
应用在内部生成一个子进程,如下所示:
let exec = util.promisify(require("child_process").exec)
const ret = await exec(ps, encoding: "utf-8"})
注意:我用execSync尝试了同步版本,同样的问题仍然存在,所以它似乎与async/await无关。
注意 2 PM2 在我的本地 macOS 上,完全相同的版本 5.1.0 似乎工作正常。所以我认为这与 Digital Ocean VPS 服务器有关。会是什么?
只要不是作为 pm2 进程运行,这在我的本地机器和 Digital Ocean VPS 上都可以正常工作
sudo pm2 start myapp
没有错误消息,什么都没有 - 该应用程序运行良好并且可以执行其他所有操作,除了我需要执行 exec 来运行命令的部分。超级郁闷!
有人有什么想法吗?
谢谢
【问题讨论】:
-
我假设你的 VPS 是一台 linux 机器,对吧?
-
@slebetman 我解决了这个问题并添加了答案
标签: node.js express digital-ocean