Skip to content

A batteries included docker build including Streamlit + Visualization Tools + Pandas/Numpy + More

Notifications You must be signed in to change notification settings

bigjoedata/streamlit-plus

Repository files navigation

streamlit-plus

A batteries included docker build including Streamlit + Visualization Tools + Other key tools

Update: Now lighter running using Pip dependency resolver (without requirements.txt version pinning)

For a quickstart, run:

docker run -p 8080:8080 -e STREAMLIT_SERVER_PORT=8080 --restart always intelligentdesigns/streamlit-plus:latest

To run with your own app: Install Docker Compose

Follow the following

git clone https://github.com/bigjoedata/streamlit-plus
cd streamlit-plus
nano docker-compose.yml # point the bind mount for /app to your own app folder. As part of the magic of Streamlit, any changes to the folder will be immedialey reflected in your Streamlit
docker-compose up -d # launch in daemon (background) mode

To build your own, follow the above directions.

nano Dockerfile # Change options if needed. Use Dockerfile_minimal, Dockerfile_extra or Dockerfile_stbot depending on what you edited above
docker build -f Dockerfile -t streamlit-plus:latest . # Build the Dockerfile you edited above and change tag name similarly

Key packages include: Streamlit Components

  • streamlit-embedcode
  • streamlit-bokeh-events
  • st-annotated-text
  • Streamlit-vega-lite

Viz

  • Streamlit
  • Bokeh
  • Altair
  • Plotly
  • Seaborn
  • Matplotlib
  • Plotnine
  • Pydeck

Utils

  • Numpy
  • Pandas
  • Pillow
  • Fastcluster

The Container Tagged "Extra" includes:

  • SciKitLearn
  • Scipy
  • streamlit-pandas-profiling (and Pandas Profiling)
  • Pycaret
  • Hiplot
  • Streamlit-observable
  • Spacy & Spacy-streamlit
  • Streamlit-folium
  • Facebook Prophet

The Container Tagged "stbot" only includes:

The Container Tagged "minimal" only includes Streamlit

Removed in latest build

  • Oauthlib
  • Quandl
  • Gspread And more. See Dockerfiles for list of included packages, which will include dependencies..

Note: I have built this as a multi-stage build to try to keep the size down, however it is still ~256MB compressed / 950MB uncompressed. This package includes many dependencies which inflate the size. You can roll your own by editing the requirements.txt and rebuilding, but some required packages are large such as Pyarrow which is a Streamlit dependency and > 200MB alone.

About

A batteries included docker build including Streamlit + Visualization Tools + Pandas/Numpy + More

Topics

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published