使用Heroku发布Streamlit应用程序时出现问题

时间:2020-07-22 19:33:55

标签: heroku streamlit

这是我第一次尝试使用Streamlit或Heroku。我的应用程序通过Streamlit在本地运行,但是在使用Heroku发布应用程序后尝试打开该应用程序时遇到了此错误:

2020-07-22T19:20:13.577096 + 00:00 heroku [router]:at =错误代码= H14 desc =“没有正在运行的Web进程” method = GET path =“ /” host = ewan-app.herokuapp .com request_id = 99a5e93d-8caa-458a-bf01-fae69aaa46e9 fwd =“ 81.156.68.48” dyno = connect = service = status = 503 bytes = protocol = https

2020-07-22T19:20:13.791262 + 00:00 heroku [router]:at =错误代码= H14 desc =“没有正在运行的Web进程” method = GET path =“ / favicon.ico” host = ewan- app.herokuapp.com request_id = e4eea2e8-4fe3-46c4-996e-0d463bb36de0 fwd =“ 81.156.68.48” dyno = connect = service = status = 503 bytes = protocol = https

当我将应用程序脚本更改为以下内容时,也会发生同样的事情:

import streamlit as st
st.write("Hello world!")

所以我猜这是由于其他文件之一引起的。我有requirements.txt:

streamlit==0.63.1

Procfile:

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

setup.sh:

mkdir -p ~/.streamlit

echo "[server]
headless = true
port = $PORT
enableCORS = false
" > ~/.streamlit/config.toml

我尝试了一些发现的建议,例如在Procfile中删除了web:和sh之间的空间,并在setup.sh中尝试了不同的布局,但到目前为止还算不上什么。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:1)

我没有setup.sh,并且有一个简单的Streamlit应用程序正在运行。 但是,我的Procfile稍有不同:

web: streamlit run --server.enableCORS false --server.port $PORT app.py