如何修改配置文件让Streamlit绑定Heroku动态端口解决R10超时错误
Heroku部署Streamlit端口绑定问题解决方案
问题根因
你收到的报错如下:
Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
该报错的核心原因是你当前的启动命令中手动指定了固定端口14549,该参数的优先级高于setup.sh写入配置文件的动态$PORT配置,导致Streamlit进程始终尝试绑定固定端口,无法匹配Heroku动态分配的端口,最终触发超时。
需要修改的内容
- 首先修改启动命令,删除末尾硬编码的固定端口参数,修改后的启动命令为:
sh setup.sh && streamlit run dashboard.py
如果该启动命令写在Procfile中,直接修改Procfile内的web进程对应启动行即可。 - 你现有的
setup.sh配置无需修改,其中port = $PORT的配置已经正确匹配Heroku动态端口规则,删除启动命令的固定端口参数后,Streamlit会自动读取配置文件中的动态端口完成绑定。
验证方法
修改完成后重新推送代码到Heroku部署,执行heroku logs --tail -a appname查看日志,不再出现R10报错即代表端口绑定成功。
内容的提问来源于stack exchange,提问作者user8214
相关产品推荐
相关产品推荐

