Streamlit 应用程序以 "Please wait... " 停止,然后停止

The Streamlit app stops with "Please wait... " and then stops

问题

由 运行ning streamlit run main.py 启动的应用程序将显示 http://IP_ADDRESS:8501 正确显示,但 http://DOMAIN_NAME 停止并显示“请稍候...”并停止。

环境

更改了 Nginx 设置

/etc/nginx/nginx.conf

server {
        listen       80; #default
        listen       [::]:80; #default
        server_name MY_DOMAIN_NAME;
        location / {
          proxy_pass http://MY_IP_ADDRESS:8501;
        }
        root         /usr/share/nginx/html; #default

我试过的

我尝试了以下方法,但没有解决问题。

https://docs.streamlit.io/knowledge-base/deploy/remote-start#symptom-2-the-app-says-please-wait-forever

尝试以下配置:

server {
    listen 80 default_server;
    server_name MY_DOMAIN_NAME;

    location / {
        proxy_pass http://127.0.0.1:8501/;
            proxy_http_version 1.1;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $host;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_read_timeout 86400;
    }

然后,使用此命令行:

streamlit run my_app.py --server.port 8501 --server.baseUrlPath / --server.enableCORS false --server.enableXsrfProtection false

如果有人使用 Ambassador 作为他们进入 kubernetes 的入口,您需要允许 websockets。这在 https://www.getambassador.io/docs/edge-stack/latest/howtos/websockets/

中有解释

但是,您基本上需要将以下内容添加到您的映射中

allow_upgrade:
- websocket