在 python 上获取“错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT”
Posted
技术标签:
【中文标题】在 python 上获取“错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT”【英文标题】:Getting "Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch" on python 【发布时间】:2019-02-15 21:05:56 【问题描述】:我正在使用烧瓶在 Python 上开发应用程序,但在尝试将其部署到 Heroku 时出现此错误:
错误 R10(启动超时)-> Web 进程在启动后 60 秒内未能绑定到 $PORT
在 Heroku 日志中,我可以看到这一行
我尝试过的几种可能性
在我的 Procfile 中我写了这个web: python hello-mysql.py
我也试过web: python hello-mysql.py runserver 0.0.0.0=$PORT
在 Procfile 中将“web”替换为“worker”。
【问题讨论】:
如果您查看日志行,您的应用在端口 5000 上启动。它需要在 $PORT 设置的端口上启动 @DamienMATHIEU 我试过 $PORT...但是从你的角度来看,你能告诉我它是如何工作的吗? 您似乎没有使用任何 Python 标准服务器,例如 gunicorn。所以在启动服务器的时候需要自己处理端口,用os.environ['PORT']
而不是5000。
【参考方案1】:
在@damien 看来,您似乎没有绑定到$PORT
env var。以下是一些可能有帮助的文档:https://devcenter.heroku.com/articles/getting-started-with-python#define-a-procfile 和 https://devcenter.heroku.com/articles/dynos#web-dynos
另外,不要将您的进程重命名为“worker”,因为只有名为 web
的进程才能通过 http/https 访问。
【讨论】:
如何绑定到$PORT
环境变量?在我的例子中,我使用 selenium 来自动化 Chrome 中的一些任务并得到同样的错误。
@JacekTrociński 同样的问题。以上是关于在 python 上获取“错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT”的主要内容,如果未能解决你的问题,请参考以下文章
错误 R10(启动超时)-> Web 进程在启动后 60 秒内无法绑定到 $PORT - Heroku
Java Maven 项目 - 错误 R10(启动超时)-> Web 进程未能在启动后 90 秒内绑定到 $PORT
错误 R10 - Web 进程在启动后 60 秒内未能绑定到 $PORT
错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT - HEROKU ERROR
Heroku discord bot 托管错误 R10(启动超时)-> Web 进程在启动后 60 秒内无法绑定到 $PORT