# Dockerfile for JupyterHub single-user notebooks
# Includes JupyterLab, common data science libs, and InfluxDB client
FROM jupyter/scipy-notebook:latest

USER root

# Install additional packages for smart city data analysis
RUN pip install --no-cache-dir \
    influxdb-client \
    pandas \
    numpy \
    matplotlib \
    plotly \
    folium \
    requests \
    sqlalchemy \
    psycopg2-binary \
    sqlalchemy \
    ipywidgets \
    jupyterlab-git

# Switch back to notebook user
USER ${NB_UID}

EXPOSE 8888

CMD ["jupyterhub-singleuser"]
