mirror of
https://github.com/jupyter/docker-stacks.git
synced 2025-10-16 14:32:57 +00:00
Stack update (partial)
Following images updated - `base-notebook` - `scipy-notebook` - `tensorflow-notebook` - `tensorflow` - `datascience-notebook` - `r-notebook`
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
# Ubuntu 20.04 (focal)
|
# Ubuntu 20.04 (focal)
|
||||||
# https://hub.docker.com/_/ubuntu/?tab=tags&name=focal
|
# https://hub.docker.com/_/ubuntu/?tab=tags&name=focal
|
||||||
# OS/ARCH: linux/amd64
|
# OS/ARCH: linux/amd64
|
||||||
ARG ROOT_CONTAINER=ubuntu:focal-20200703@sha256:d5a6519d9f048100123c568eb83f7ef5bfcad69b01424f420f17c932b00dea76
|
ARG ROOT_CONTAINER=ubuntu:focal-20200729@sha256:6f2fb2f9fb5582f8b587837afd6ea8f37d8d1d9e41168c90f410a6ef15fa8ce5
|
||||||
|
|
||||||
ARG BASE_CONTAINER=$ROOT_CONTAINER
|
ARG BASE_CONTAINER=$ROOT_CONTAINER
|
||||||
FROM $BASE_CONTAINER
|
FROM $BASE_CONTAINER
|
||||||
@@ -114,9 +114,9 @@ RUN conda install --quiet --yes 'tini=0.18.0' && \
|
|||||||
# Do all this in a single RUN command to avoid duplicating all of the
|
# Do all this in a single RUN command to avoid duplicating all of the
|
||||||
# files across image layers when the permissions change
|
# files across image layers when the permissions change
|
||||||
RUN conda install --quiet --yes \
|
RUN conda install --quiet --yes \
|
||||||
'notebook=6.1.3' \
|
'notebook=6.1.4' \
|
||||||
'jupyterhub=1.1.0' \
|
'jupyterhub=1.1.0' \
|
||||||
'jupyterlab=2.2.5' && \
|
'jupyterlab=2.2.7' && \
|
||||||
conda clean --all -f -y && \
|
conda clean --all -f -y && \
|
||||||
npm cache clean --force && \
|
npm cache clean --force && \
|
||||||
jupyter notebook --generate-config && \
|
jupyter notebook --generate-config && \
|
||||||
|
@@ -14,6 +14,14 @@ SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
|||||||
|
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
|
# Julia installation
|
||||||
|
# Default values can be overridden at build time
|
||||||
|
# (ARGS are in lower case to distinguish them from ENV)
|
||||||
|
# Check https://julialang.org/downloads/
|
||||||
|
ARG julia_version="1.5.1"
|
||||||
|
# SHA256 checksum
|
||||||
|
ARG julia_checksum="f5d37cb7fe40e3a730f721da8f7be40310f133220220949939d8f892ce2e86e3"
|
||||||
|
|
||||||
# R pre-requisites
|
# R pre-requisites
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
@@ -24,16 +32,16 @@ RUN apt-get update && \
|
|||||||
|
|
||||||
# Julia dependencies
|
# Julia dependencies
|
||||||
# install Julia packages in /opt/julia instead of $HOME
|
# install Julia packages in /opt/julia instead of $HOME
|
||||||
ENV JULIA_DEPOT_PATH=/opt/julia
|
ENV JULIA_DEPOT_PATH=/opt/julia \
|
||||||
ENV JULIA_PKGDIR=/opt/julia
|
JULIA_PKGDIR=/opt/julia \
|
||||||
ENV JULIA_VERSION=1.5.0
|
JULIA_VERSION="${julia_version}"
|
||||||
|
|
||||||
WORKDIR /tmp
|
WORKDIR /tmp
|
||||||
|
|
||||||
# hadolint ignore=SC2046
|
# hadolint ignore=SC2046
|
||||||
RUN mkdir "/opt/julia-${JULIA_VERSION}" && \
|
RUN mkdir "/opt/julia-${JULIA_VERSION}" && \
|
||||||
wget -q https://julialang-s3.julialang.org/bin/linux/x64/$(echo "${JULIA_VERSION}" | cut -d. -f 1,2)"/julia-${JULIA_VERSION}-linux-x86_64.tar.gz" && \
|
wget -q https://julialang-s3.julialang.org/bin/linux/x64/$(echo "${JULIA_VERSION}" | cut -d. -f 1,2)"/julia-${JULIA_VERSION}-linux-x86_64.tar.gz" && \
|
||||||
echo "be7af676f8474afce098861275d28a0eb8a4ece3f83a11027e3554dcdecddb91 *julia-${JULIA_VERSION}-linux-x86_64.tar.gz" | sha256sum -c - && \
|
echo "${julia_checksum} *julia-${JULIA_VERSION}-linux-x86_64.tar.gz" | sha256sum -c - && \
|
||||||
tar xzf "julia-${JULIA_VERSION}-linux-x86_64.tar.gz" -C "/opt/julia-${JULIA_VERSION}" --strip-components=1 && \
|
tar xzf "julia-${JULIA_VERSION}-linux-x86_64.tar.gz" -C "/opt/julia-${JULIA_VERSION}" --strip-components=1 && \
|
||||||
rm "/tmp/julia-${JULIA_VERSION}-linux-x86_64.tar.gz"
|
rm "/tmp/julia-${JULIA_VERSION}-linux-x86_64.tar.gz"
|
||||||
RUN ln -fs /opt/julia-*/bin/julia /usr/local/bin/julia
|
RUN ln -fs /opt/julia-*/bin/julia /usr/local/bin/julia
|
||||||
@@ -50,13 +58,13 @@ USER $NB_UID
|
|||||||
|
|
||||||
# R packages including IRKernel which gets installed globally.
|
# R packages including IRKernel which gets installed globally.
|
||||||
RUN conda install --quiet --yes \
|
RUN conda install --quiet --yes \
|
||||||
'r-base=3.6.3' \
|
'r-base=4.0.2' \
|
||||||
'r-caret=6.0*' \
|
'r-caret=6.0*' \
|
||||||
'r-crayon=1.3*' \
|
'r-crayon=1.3*' \
|
||||||
'r-devtools=2.3*' \
|
'r-devtools=2.3*' \
|
||||||
'r-forecast=8.12*' \
|
'r-forecast=8.13*' \
|
||||||
'r-hexbin=1.28*' \
|
'r-hexbin=1.28*' \
|
||||||
'r-htmltools=0.4*' \
|
'r-htmltools=0.5*' \
|
||||||
'r-htmlwidgets=1.5*' \
|
'r-htmlwidgets=1.5*' \
|
||||||
'r-irkernel=1.1*' \
|
'r-irkernel=1.1*' \
|
||||||
'r-nycflights13=1.0*' \
|
'r-nycflights13=1.0*' \
|
||||||
@@ -64,11 +72,11 @@ RUN conda install --quiet --yes \
|
|||||||
'r-randomforest=4.6*' \
|
'r-randomforest=4.6*' \
|
||||||
'r-rcurl=1.98*' \
|
'r-rcurl=1.98*' \
|
||||||
'r-reshape2=1.4*' \
|
'r-reshape2=1.4*' \
|
||||||
'r-rmarkdown=2.1*' \
|
'r-rmarkdown=2.3*' \
|
||||||
'r-rsqlite=2.2*' \
|
'r-rsqlite=2.2*' \
|
||||||
'r-shiny=1.4*' \
|
'r-shiny=1.5*' \
|
||||||
'r-tidyverse=1.3*' \
|
'r-tidyverse=1.3*' \
|
||||||
'rpy2=3.1*' \
|
'rpy2=3.3*' \
|
||||||
&& \
|
&& \
|
||||||
conda clean --all -f -y && \
|
conda clean --all -f -y && \
|
||||||
fix-permissions "${CONDA_DIR}" && \
|
fix-permissions "${CONDA_DIR}" && \
|
||||||
|
@@ -25,22 +25,22 @@ USER $NB_UID
|
|||||||
|
|
||||||
# R packages
|
# R packages
|
||||||
RUN conda install --quiet --yes \
|
RUN conda install --quiet --yes \
|
||||||
'r-base=4.0.0' \
|
'r-base=4.0.2' \
|
||||||
'r-caret=6.*' \
|
'r-caret=6.*' \
|
||||||
'r-crayon=1.3*' \
|
'r-crayon=1.3*' \
|
||||||
'r-devtools=2.3*' \
|
'r-devtools=2.3*' \
|
||||||
'r-forecast=8.12*' \
|
'r-forecast=8.13*' \
|
||||||
'r-hexbin=1.28*' \
|
'r-hexbin=1.28*' \
|
||||||
'r-htmltools=0.4*' \
|
'r-htmltools=0.5*' \
|
||||||
'r-htmlwidgets=1.5*' \
|
'r-htmlwidgets=1.5*' \
|
||||||
'r-irkernel=1.1*' \
|
'r-irkernel=1.1*' \
|
||||||
'r-nycflights13=1.0*' \
|
'r-nycflights13=1.0*' \
|
||||||
'r-randomforest=4.6*' \
|
'r-randomforest=4.6*' \
|
||||||
'r-rcurl=1.98*' \
|
'r-rcurl=1.98*' \
|
||||||
'r-rmarkdown=2.2*' \
|
'r-rmarkdown=2.3*' \
|
||||||
'r-rodbc=1.3*' \
|
'r-rodbc=1.3*' \
|
||||||
'r-rsqlite=2.2*' \
|
'r-rsqlite=2.2*' \
|
||||||
'r-shiny=1.4*' \
|
'r-shiny=1.5*' \
|
||||||
'r-tidyverse=1.3*' \
|
'r-tidyverse=1.3*' \
|
||||||
'unixodbc=2.3.*' \
|
'unixodbc=2.3.*' \
|
||||||
'r-tidymodels=0.1*' \
|
'r-tidymodels=0.1*' \
|
||||||
|
@@ -18,30 +18,31 @@ USER $NB_UID
|
|||||||
RUN conda install --quiet --yes \
|
RUN conda install --quiet --yes \
|
||||||
'beautifulsoup4=4.9.*' \
|
'beautifulsoup4=4.9.*' \
|
||||||
'conda-forge::blas=*=openblas' \
|
'conda-forge::blas=*=openblas' \
|
||||||
'bokeh=2.1.*' \
|
'bokeh=2.2.*' \
|
||||||
'bottleneck=1.3.*' \
|
'bottleneck=1.3.*' \
|
||||||
'cloudpickle=1.5.*' \
|
'cloudpickle=1.6.*' \
|
||||||
'cython=0.29.*' \
|
'cython=0.29.*' \
|
||||||
'dask=2.20.*' \
|
'dask=2.26.*' \
|
||||||
'dill=0.3.*' \
|
'dill=0.3.*' \
|
||||||
'h5py=2.10.*' \
|
'h5py=2.10.*' \
|
||||||
|
# hdf5 update to > 1.10 fails resolving deps
|
||||||
'hdf5=1.10.*' \
|
'hdf5=1.10.*' \
|
||||||
'ipywidgets=7.5.*' \
|
'ipywidgets=7.5.*' \
|
||||||
'ipympl=0.5.*'\
|
'ipympl=0.5.*'\
|
||||||
'matplotlib-base=3.2.*' \
|
'matplotlib-base=3.3.*' \
|
||||||
# numba update to 0.49 fails resolving deps.
|
# numba update to > 0.49 fails resolving deps
|
||||||
'numba=0.48.*' \
|
'numba=0.48.*' \
|
||||||
'numexpr=2.7.*' \
|
'numexpr=2.7.*' \
|
||||||
'pandas=1.1.*' \
|
'pandas=1.1.*' \
|
||||||
'patsy=0.5.*' \
|
'patsy=0.5.*' \
|
||||||
'protobuf=3.12.*' \
|
'protobuf=3.13.*' \
|
||||||
'pytables=3.6.*' \
|
'pytables=3.6.*' \
|
||||||
'scikit-image=0.17.*' \
|
'scikit-image=0.17.*' \
|
||||||
'scikit-learn=0.23.*' \
|
'scikit-learn=0.23.*' \
|
||||||
'scipy=1.5.*' \
|
'scipy=1.5.*' \
|
||||||
'seaborn=0.10.*' \
|
'seaborn=0.11.*' \
|
||||||
'sqlalchemy=1.3.*' \
|
'sqlalchemy=1.3.*' \
|
||||||
'statsmodels=0.11.*' \
|
'statsmodels=0.12.*' \
|
||||||
'sympy=1.6.*' \
|
'sympy=1.6.*' \
|
||||||
'vincent=0.4.*' \
|
'vincent=0.4.*' \
|
||||||
'widgetsnbextension=3.5.*'\
|
'widgetsnbextension=3.5.*'\
|
||||||
|
@@ -7,6 +7,6 @@ LABEL maintainer="Jupyter Project <jupyter@googlegroups.com>"
|
|||||||
|
|
||||||
# Install Tensorflow
|
# Install Tensorflow
|
||||||
RUN pip install --quiet --no-cache-dir \
|
RUN pip install --quiet --no-cache-dir \
|
||||||
'tensorflow==2.2.0' && \
|
'tensorflow==2.3.0' && \
|
||||||
fix-permissions "${CONDA_DIR}" && \
|
fix-permissions "${CONDA_DIR}" && \
|
||||||
fix-permissions "/home/${NB_USER}"
|
fix-permissions "/home/${NB_USER}"
|
||||||
|
Reference in New Issue
Block a user