gpt4 book ai didi

node.js - Heroku 上的 Node 应用程序由于只读文件系统而失败

转载 作者:太空宇宙 更新时间:2023-11-04 03:24:42 24 4
gpt4 key购买 nike

我有一个非常简单的 TypeScript 应用程序(使用 Express.js 构建),它在部署到 Heroku 的 Node 上运行。我同时使用 Node buildpack 和 zidizei/heroku-buildpack-tsc,后者在部署时将 .ts 编译为 JavaScript。

直到今天我尝试运行部署时,这一切都运行良好。部署本身工作正常,但应用程序随后在运行启动脚本 node ./dist/server.js 时崩溃。此处记录:

Sep 06 14:43:33 goodlord-bark app/web.1: $ node ./dist/server.js 
Sep 06 14:43:33 goodlord-bark heroku/web.1: Process exited with status 1
Sep 06 14:43:33 goodlord-bark heroku/web.1: State changed from starting to crashed
Sep 06 14:43:33 goodlord-bark app/web.1: error An unexpected error occurred: "EROFS: read-only file system, access '/usr/local/bin'".
Sep 06 14:43:33 goodlord-bark app/web.1: info If you think this is a bug, please open a bug report with the information provided in "/app/yarn-error.log".

任何脚本或我的应用程序都不会尝试写入 /usr/local/bin 所以我很困惑为什么会发生这种情况。这个错误仅在对代码库和新部署进行表面更改后发生,因此我觉得 Heroku 端发生了一些变化,但我可以深入了解它。

回滚到以前的部署使我的应用程序暂时保持运行,但我目前无法部署任何更新。

也没有 /app/yarn-error.log 可供检查。

最佳答案

我突然在 Heroku 上遇到了类似的问题。结果发现这个问题是在yarn 1.0.0 中引入的,Heroku 默认使用最新版本。这是相关的heroku-buildpack-nodejs issue .

通过降级package.json的engines部分中的yarn来修复:

"engines": {
"node": "^7.10.1",
"yarn": "0.27.5"
}

关于node.js - Heroku 上的 Node 应用程序由于只读文件系统而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46077170/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com