【发布时间】:2020-05-07 13:30:55
【问题描述】:
我将 NestJS 应用程序部署到 Heroku 并获得 H10 Error
日志:
2020-05-07T13:12:51.967622+00:00 heroku[web.1]: State changed from starting to crashed
2020-05-07T13:15:14.556288+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=scalenode.herokuapp.com request_id=535e5643-26ad-4fbe-acf3-7f805c8c463c fwd="91.64.79.140" dyno= connect= service= status=503 bytes= protocol=https
它令人惊叹,因为错误来自 GET 请求。节点编译成功。我通过 HerokuCli 和 Github 部署。两者的结果相同。但是,如果我使用 heroku local web 在本地使用 HerokuCli 对其进行测试,它可以工作。
这似乎不是部署错误本身,它似乎是路由/ 无法解决,因此应用程序崩溃。成功部署后,当我在浏览器中打开应用程序时,似乎超时了。
Here is the Repo。我在/ 路由上有一个“Hello World”字符串。我无法找出问题所在。
我对实例使用 Procfile,这似乎很好:
web: node dist/main.js
编辑:
我尝试了静态 HTML 响应并尝试了稳定的节点版本 12.x。
不明白
2020-05-07T14:22:40.862206+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RoutesResolver] [39m[32mAppController {}:[39m[38;5;3m +6ms[39m
2020-05-07T14:22:40.865503+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RouterExplorer] [39m[32mMapped {, GET} route[39m[38;5;3m +3ms[39m
2020-05-07T14:22:40.865886+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RoutesResolver] [39m[32mAuthController {}:[39m[38;5;3m +0ms[39m
2020-05-07T14:22:40.867140+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RouterExplorer] [39m[32mMapped {/auth/login, POST} route[39m[38;5;3m +2ms[39m
2020-05-07T14:22:40.867778+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RouterExplorer] [39m[32mMapped {/profile, GET} route[39m[38;5;3m +0ms[39m
2020-05-07T14:22:40.868162+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RoutesResolver] [39m[32mFilesController {/files}:[39m[38;5;3m +1ms[39m
2020-05-07T14:22:40.868999+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[RouterExplorer] [39m[32mMapped {/files/upload, POST} route[39m[38;5;3m +0ms[39m
2020-05-07T14:22:40.873240+00:00 app[web.1]: [32m[Nest] 4 - [39m05/07/2020, 2:22:40 PM [38;5;3m[NestApplication] [39m[32mNest application successfully started[39m[38;5;3m +5ms[39m
2020-05-07T14:22:42.000000+00:00 app[api]: Build succeeded
它不起作用...我无法在日志中找到更多详细信息,没有更具体的了。到底是怎么回事……
【问题讨论】:
-
当您收到 H10 错误时,日志中是否还有其他内容显示错误? H10 是 Heroku 的通用应用程序崩溃,通常会显示某种错误。
-
不,这很有趣。一切正常。没有其他错误或警告。 Nestjs 正在构建、部署并在日志中,正如您在上面看到的,它已构建。当我在浏览器 scalenode.heroku.com 中打开应用程序时,很长一段时间没有任何反应(白页),然后它崩溃并出现唯一的错误,您可以在上面的描述中看到。就是这样。有趣的是,这在我拥有的唯一错误日志中
... desc="App crashed" method=GET path="/" ...似乎无法解决根路由。但在当地它的作品。也可以在本地使用 heroku cli 进行测试 -
您的
client目录似乎很难解决。您是否尝试过从终端查看文件结构?
标签: node.js heroku deployment nestjs