Hi! Is possible to expose the streamlit service externally? My goal is to have users access the website without needing to log in
r
Rick Lamers
10/05/2021, 1:19 PM
It is! You can change the service authentication requirements (see screenshot)
One caveat we have at the moment is that the URL will be coupled to the pipeline run UUID. So if you run the pipeline as a job it will keep running the Streamlit service but in a new pipeline run (in the same or different job) the Streamlit endpoint will change again.
Finally, pipeline runs end when the last step has finished executing. To make the Streamlit endpoint stay up until indefinitely you cancel the pipeline run you need to add a step that sleeps.
Could be a simple as:
print("Run service indefinitely")
while True:
time.sleep(86400)
t
Tadeo
10/05/2021, 5:18 PM
Ah, so in that case I should create a blank pipeline, attach the streamlit service to it and not have a job assigned to it. Am I right?
r
Rick Lamers
10/05/2021, 6:39 PM
This is an example you can import: https://github.com/ricklamers/orchest-streamlit-public-example
Basically, just have a pipeline that has a step that never exits. Run that pipeline in a job. Then as long as the job is not cancelled, your Streamlit service endpoint will be available.
t
Tadeo
11/04/2021, 3:24 PM
Hey @Rick Lamers! Do you have a recommendation to apply a custom domain to this? I’ve been using Github pages lately
r
Rick Lamers
11/04/2021, 11:51 PM
Let me discuss some ideas with the team. Various options could work.