无法在heroku上部署节点应用程序。仅显示欢迎消息

时间:2018-04-20 21:05:50

标签: node.js heroku

heroku日志

 2018-04-20T20:45:50.151330+00:00 app[api]: Enable Logplex by user ghsklat2378123@gmail.com
 2018-04-20T20:45:50.059558+00:00 app[api]: Release v1 created by user ghsklat2378123@gmail.com
 2018-04-20T20:45:50.059558+00:00 app[api]: Initial release by user ghsklat2378123@gmail.com
 2018-04-20T20:45:50.151330+00:00 app[api]: Release v2 created by user ghsklat2378123@gmail.com
 2018-04-20T20:46:48.000000+00:00 app[api]: Build started by user ghsklat2378123@gmail.com
 2018-04-20T20:46:58.098188+00:00 app[api]: Deploy 2b289e67 by user ghsklat2378123@gmail.com
 2018-04-20T20:46:58.098188+00:00 app[api]: Release v3 created by user ghsklat2378123@gmail.com
 2018-04-20T20:46:48.000000+00:00 app[api]: Build succeeded
 2018-04-20T20:46:58.115335+00:00 app[api]: Scaled to web@1:Free by user ghsklat2378123@gmail.com
 2018-04-20T20:47:00.895268+00:00 heroku[web.1]: Starting process with command `npm start`
 2018-04-20T20:47:03.518908+00:00 app[web.1]: 
 2018-04-20T20:47:03.518933+00:00 app[web.1]: > node server.js
 2018-04-20T20:47:03.518931+00:00 app[web.1]: > stywqrrd@1.0.0 start /app
 2018-04-20T20:47:03.518935+00:00 app[web.1]: 
 2018-04-20T20:47:03.875652+00:00 app[web.1]: Express server listening on port 3000
 2018-04-20T20:48:01.013365+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
 2018-04-20T20:48:01.013866+00:00 heroku[web.1]: Stopping process with SIGKILL
 2018-04-20T20:48:01.152301+00:00 heroku[web.1]: State changed from starting to crashed
 2018-04-20T20:48:01.155261+00:00 heroku[web.1]: State changed from crashed to starting
 2018-04-20T20:48:01.132422+00:00 heroku[web.1]: Process exited with status 137
 2018-04-20T20:48:02.894892+00:00 heroku[web.1]: Starting process with command `npm start`
 2018-04-20T20:48:05.106690+00:00 app[web.1]: 
 2018-04-20T20:48:05.106708+00:00 app[web.1]: > sstywqrrd@1.0.0 start /app
 2018-04-20T20:48:05.106710+00:00 app[web.1]: > node server.js
 2018-04-20T20:48:05.106712+00:00 app[web.1]: 
 2018-04-20T20:48:05.295340+00:00 app[web.1]: Express server listening on port 3000

这是一个非常简单的节点应用程序,我无法部署。当我收到链接时,显示:heroku welcome to you new app. Refer to documentation if you need help deploying。日志不显示任何错误(所有日志显示为蓝色)。我该如何解决这个问题?

克隆回购然后做了 git init,git add,git commit

heroku create
heroku git:remote -a safe-forest-59278
heroku apps:create myappName
git push heroku master

1 个答案:

答案 0 :(得分:1)

根据日志声明

Error R10 (Boot timeout) -> Web process failed to bind to $PORT
within 60 seconds of launch

这只是意味着您尝试连接的端口由于某种原因不可用。

而且很可能你正在指定像

这样的端口

port = 3000

您应该将此行更改为

port = process.env.PORT || 3000

这将允许heroku服务器为您的服务器分配一个可用端口来监听。

为什么会发生这种情况,主要是因为您在开发应用程序时指定的端口,这些端口很可能在生产中可用并打开。