Hello!
I wanted to deploy a streamlit web app on Heroku. So, the way I designed this is, there is a flask model server which when receives a post request gives the prediction as a response. So, I send it a post request from the streamlit app using the requests library. I am facing a lot of errors and confusion about hosting them on Heroku, especially with ports. Locally, I am able to do it comfortably as flask server runs on HTTP://localhost:5000 and the streamlit on HTTP://localhost:8501 and I am able to easily call HTTP://localhost:5000 and receive the predictions from the flask server. However, I am not able to deploy them on Heroku and I am constantly getting R10 errors.
@Soma Did you try using Heroku CLI for deployment? For some reason it worked for me though i got R10 error while doing the deployment via heroku web interface
Yeah, I have been using Heroku CLI and I am able to deploy only streamlit apps on Heroku. However, I am getting confused in this case, where I have a flask server(which I call model server) which returns to me the model’s results upon a POST request and another streamlit server which is the main page or which is rendered to the browser. From streamlit, I make a POST request to the flask server to get my results. I am confused with the $PORT variable that heroku assigns, about how I should be using this port in this case and how my procfile should be.
Thanks for stopping by! We use cookies to help us understand how you interact with our website.
By clicking “Accept all”, you consent to our use of cookies. For more information, please see our privacy policy.
Cookie settings
Strictly necessary cookies
These cookies are necessary for the website to function and cannot be switched off. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms.
Performance cookies
These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us understand how visitors move around the site and which pages are most frequently visited.
Functional cookies
These cookies are used to record your choices and settings, maintain your preferences over time and recognize you when you return to our website. These cookies help us to personalize our content for you and remember your preferences.
Targeting cookies
These cookies may be deployed to our site by our advertising partners to build a profile of your interest and provide you with content that is relevant to you, including showing you relevant ads on other websites.