Streamlit apps on the Fly

Hi – I am trying [unsuccessfully] to deploy a Streamlit.io (web) app via Fly.io

Streamlit is a Python framework. So far no luck I get a critical error during health checks.

My Procfile is:

web: streamlit run app.py

Streamlit normally runs on port 8051 and it uses the Tornado web server.

Oops – found a missing dependency in the error log.

2021-07-20T07:33:03Z [info] web |     with open(get_project_root()/config_file, encoding="utf-8") as f:
2021-07-20T07:33:03Z [info] web | FileNotFoundError: [Errno 2] No such file or directory: '/app/emmaus_walking/app_config.toml'

Now it’s failing to find a config file because of a path issue.
Hopefully the docs explain how this works… here goes…

How are you deploying your app on Fly? Is this using a Dockerfile or not?

I’m not sure why there would be a path problem :thinking:

If you’re not using a Dockerfile, you could try one with the following contents:

FROM python:3.8.5

COPY . /app

WORKDIR /app

RUN pip install -r requirements.txt

CMD ["streamlit", "run", "app.py"]
1 Like