Python heroku错误H20 App启动超时,R10启动超时
Posted
技术标签:
【中文标题】Python heroku错误H20 App启动超时,R10启动超时【英文标题】:Python heroku error H20 App boot timeout, R10 boot timeout 【发布时间】:2014-03-24 17:51:00 【问题描述】:我以http://flask.pocoo.org/docs/quickstart/为例,“工头启动”后我可以在自己的机器上运行它,但是当我在heroku上部署它时,出现R10超时错误。
我写了 Procfileas:
web: python flaskr.py
为了运行“git push heroku master”命令,我删除了“disreibute==0.6.24”语句,因为如果没有,我会得到如下错误:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'install' is not defined
所以我不知道是Procfile还是requirements.txt文件错误还是其他错误。我几乎阅读了我找到的所有文章,但问题还没有解决。
另外,例子中使用了SQLite3数据库,不知道是不是跟这个有关..
最后,我会在这里列出日志:
at=error code=H20 desc="App boot timeout" method=GET path=/ host=tranquil-tor-4127.herokuapp.com request_id=8a088587-bee9-40e9-a686-0555843c191b fwd="8.35.201.53" dyno= connect= service= status=503 bytes=
Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
Stopping process with SIGKILL
Process exited with status 137
at=error code=H10 desc="App crashed" method=GET path=/ host=tranquil-tor-4127.herokuapp.com request_id=59ccb901-e988-430d-93e8-f83a8930e60b fwd="8.35.201.50" dyno= connect= service= status=503 bytes=
at=error code=H10 desc="App crashed" method=GET path=/ host=tranquil-tor-4127.herokuapp.com request_id=7b76850f-7c25-481f-8216-542d9baaa769 fwd="8.35.201.51" dyno= connect= service= status=503 bytes=
Slug compilation started
State changed from crashed to starting
at=error code=H10 desc="App crashed" method=GET path=/ host=tranquil-tor-4127.herokuapp.com request_id=5601bbce-b00c-4927-8d9c-ac534745859d fwd="8.35.201.52" dyno= connect= service= status=503 bytes=
我注意到slug编译可以正常完成,然后出现R10错误。
【问题讨论】:
上述文章没有提到 Heroku。它们是在本地部署应用程序和在 Heroku 上部署应用程序时的一些差异。 Heroku 需要虚拟环境来部署应用程序。请参考devcenter.heroku.com/articles/getting-started-with-python 在 Heroku 上部署您的应用 heroku 不支持 sqlite3。 【参考方案1】:我们的 node.js 应用程序的以下解决方案可能会帮助到这里的任何人。
收听 127.0.0.1 会给我们带来 code=H20 desc="App boot timeout" 问题。将监听地址改为0.0.0.0即可解决问题。
另外,不要使用您自己的端口,而是 使用环境变量 PORT ,它由 heroku 传递给您的应用程序环境变量。否则,你也会遇到这个问题。
这是我们的节点代码:
const PORT=3000, LOCAL_ADDRESS='0.0.0.0' = process.env
server.listen(PORT, LOCAL_ADDRESS, () =>
const address = server.address();
console.log('server listening at', address);
);
所以,请尝试记录您的监听地址和端口并首先检查它们。
【讨论】:
我花了 2 个小时才来到这里!谢谢! 好兄弟!挣扎了几个小时才达到这个目标!向你致敬!!!! 对不起,如果这是一个愚蠢的问题,但我认为您提供的代码是另一种编程语言。如何在 python flask api 中更改这些端口和本地地址?还是在procfile中? @Caldass_ 见***.com/questions/20212894/…以上是关于Python heroku错误H20 App启动超时,R10启动超时的主要内容,如果未能解决你的问题,请参考以下文章
部署到 Heroku 错误:找不到模块“/app/server.js”