59 lines
1.2 KiB
Docker
59 lines
1.2 KiB
Docker
ARG BASE_CONTAINER=betalupi/jupyter-base
|
|
FROM $BASE_CONTAINER
|
|
LABEL maintainer="Mark <mark@betalupi.com>"
|
|
|
|
USER $NB_UID
|
|
|
|
RUN mamba install --yes \
|
|
## Jupyter extensions
|
|
"jupyter_server>=2.0.0" \
|
|
## Python packages
|
|
# Scraping
|
|
"beautifulsoup4" \
|
|
"requests" \
|
|
"schedule" \
|
|
# ML and Data
|
|
"scikit-image" \
|
|
"scikit-learn" \
|
|
"scipy" \
|
|
"seaborn" \
|
|
"pandas" \
|
|
"matplotlib-base" \
|
|
# Misc
|
|
"numpy" \
|
|
"sympy" \
|
|
"altair" \
|
|
"bokeh" \
|
|
"bottleneck" \
|
|
"cloudpickle" \
|
|
"conda-forge::blas=*=openblas" \
|
|
"cython" \
|
|
"dask" \
|
|
"dill" \
|
|
"h5py" \
|
|
"ipympl" \
|
|
"ipywidgets" \
|
|
"numba" \
|
|
"numexpr" \
|
|
"patsy" \
|
|
"protobuf" \
|
|
"pytables" \
|
|
"sqlalchemy" \
|
|
"statsmodels" \
|
|
"widgetsnbextension" \
|
|
"xlrd" \
|
|
"pytest" \
|
|
"ipython" \
|
|
&& \
|
|
# Cleanup
|
|
mamba clean --all -f -y && \
|
|
npm cache clean --force && \
|
|
jupyter lab clean && \
|
|
rm -rf "/home/${NB_USER}/.cache/yarn" && \
|
|
fix-permissions "${CONDA_DIR}" && \
|
|
fix-permissions "/home/${NB_USER}"
|
|
|
|
# Import matplotlib once to build the font cache.
|
|
ENV XDG_CACHE_HOME="/home/${NB_USER}/.cache/"
|
|
RUN MPLBACKEND=Agg python -c "import matplotlib.pyplot" && \
|
|
fix-permissions "/home/${NB_USER}" |