Streamlit Python应用程序已成功部署到Heroku,但出现应用程序错误

slmsl1lt  于 2022-11-13  发布在  Python
关注(0)|答案(3)|浏览(210)

我有一个Streamlit Python应用程序,我想在heroku上部署,部署是成功的,但当我打开应用程序时,它给了我一个应用程序错误

对于初学者,下面是我的需求文件:

wordcloud==1.8.1
xlrd<2.0
pandas<1.2.3
numpy<1.20.1
streamlit==0.79.0
Pillow==8.2.0

下面是我Procfile文件:

web: sh setup.sh && streamlit run suite.py

我也做了安装文件,我按照这个视频的每一步:https://youtu.be/nJHrSvYxzjE当我执行此命令时:

heroku logs --tail

我得到了这个:

2021-04-02T19:26:55.000000+00:00 app[api]: Build started by user 
2021-04-02T19:27:52.901079+00:00 app[api]: Release v5 created by user 
2021-04-02T19:27:52.901079+00:00 app[api]: Deploy 7ca73902 by user 
2021-04-02T19:28:18.000000+00:00 app[api]: Build succeeded
2021-04-02T19:28:35.572192+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/" host=wordcloudpython.herokuapp.com r
equest_id=28e8c410-53ba-42a2-86ed-dfac2162d53f fwd="160.179.71.151" dyno= connect= service= status=503 bytes= protocol=https

这是我第一次使用heroku,我对这个相当陌生。

uemypmqf

uemypmqf1#

您的需求文件命名正确吗?您可以分享您的setup.sh文件的内容吗?
如果所有命名都正确,它没有理由不起作用。

xbp102n0

xbp102n02#

1.这听起来可能是一样的,但大多数时候错误是因为没有在requirements.txt文件中包括所有的包。

  • 这件事最近发生在我身上 *:我需要使用一些绘图,这需要我安装Scipy。我甚至不需要导入scipy,我只需要安装它作为一个依赖项,所以我没有包括在我的需求文件中,它破坏了部署。所以,我强烈建议再次仔细检查这种情况。
  1. Heroku的另一个替代方案是使用Streamlit共享部署您的应用程序。了解更多关于它的信息here。它非常容易使用,不需要您安装任何东西。您所需要做的就是在源代码所在的位置给予您的github资源库链接/名称。
    PS:你需要等待几个小时才能访问streamlit共享,一旦你注册了,也要留意你的垃圾邮件文件夹以防万一。
ctrmrzij

ctrmrzij3#

H14 -没有运行HTTP 503的web dynos意味着“服务当前不可用”。请注意,Heroku路由器错误页面可以自定义。这些仅适用于应用程序没有响应请求的错误,例如503。解决方案:使用heroku ps:scale命令启动应用程序的Web服务器。
您可以尝试使用此命令来强制Heroku启动Web Dyno

$ heroku ps:scale web=1

相关问题