我最近将 Forge 服务器上的 Node 和 NPM 版本从 Node v14.19.0 更新到 v18.17.1,将 NPM v.6.14.16 更新到 v9.6.7。我还更新了我的依赖项。不确定这是否相关,但我需要更改服务器上的 Forge 密码。
部署时,
npm install
运行良好,但当我运行npm run dev
时,我总是从 Forge 得到“已杀死”响应。特别是“npm verb exit 137”,这表明我已经耗尽了内存。
这是输出:
> dev
> mix
QUEUE_CONNECTION set to "redis", make sure to start a queue worker.
● Mix █████████████████████████ emitting (98%)
after emit
Outbound Data: File generated!
Ziggy Routes: Files generated!
Killed
我尝试通过将 max-old-space-size 添加到我的脚本中来解决此问题:
"dev": "NODE_OPTIONS=\"--max-old-space-size=8000\" mix "
但是,这并没有帮助,而且我不断收到相同的错误。
我也尝试运行
npm run prod
,但遇到了同样的错误。
我还尝试通过 SSH 进入服务器并运行
npm run dev
和 npm run prod
。不幸的是,这没有给我任何进一步的信息。
我也尝试过运行
npm cache clean --force
,然后运行npm run dev
,但遇到了同样的问题。
知道这里可能发生什么以及如何解决它吗?
谢谢!
正如评论中指出的,错误的原因是服务器太小(尽管之前工作得很好)。解决这个问题的方法是从 t3.small(2GB 内存)升级到 t3.medium(4GB 内存)。