4
4
# Ubuntu 20.04 (focal)
5
5
# https://hub.docker.com/_/ubuntu/?tab=tags&name=focal
6
6
# OS/ARCH: linux/amd64
7
- ARG ROOT_CONTAINER=ubuntu:focal-20201008 @sha256:1d7b639619bdca2d008eca2d5293e3c43ff84cbee597ff76de3b7a7de3e84956
7
+ ARG ROOT_CONTAINER=ubuntu:focal-20201106 @sha256:4e4bc990609ed865e07afc8427c30ffdddca5153fd4e82c20d8f0783a291e241
8
8
9
9
ARG BASE_CONTAINER=$ROOT_CONTAINER
10
10
FROM $BASE_CONTAINER
@@ -24,9 +24,9 @@ USER root
24
24
# (ARGS are in lower case to distinguish them from ENV)
25
25
# Check https://github.com/conda-forge/miniforge/releases
26
26
# Conda version
27
- ARG conda_version="4.9.0 "
27
+ ARG conda_version="4.9.2 "
28
28
# Miniforge installer patch version
29
- ARG miniforge_patch_number="4 "
29
+ ARG miniforge_patch_number="0 "
30
30
# Miniforge installer architecture
31
31
ARG miniforge_arch="x86_64"
32
32
# Python implementation to use
@@ -38,15 +38,14 @@ ARG miniforge_version="${conda_version}-${miniforge_patch_number}"
38
38
# Miniforge installer
39
39
ARG miniforge_installer="${miniforge_python}-${miniforge_version}-Linux-${miniforge_arch}.sh"
40
40
# Miniforge checksum
41
- ARG miniforge_checksum="dae28a05f0fcfed0b47c66468e8434ab42cb1ff90de96540a506949cdecd2b5a "
41
+ ARG miniforge_checksum="6321775eb2c02d7f51d3a9004ce0be839099f126f4099c781531428536669560 "
42
42
43
43
# Install all OS dependencies for notebook server that starts but lacks all
44
44
# features (e.g., download as all possible file formats)
45
45
ENV DEBIAN_FRONTEND noninteractive
46
46
RUN apt-get update \
47
47
&& apt-get install -yq --no-install-recommends \
48
48
wget \
49
- bzip2 \
50
49
ca-certificates \
51
50
sudo \
52
51
locales \
@@ -68,7 +67,8 @@ ENV CONDA_DIR=/opt/conda \
68
67
LANGUAGE=en_US.UTF-8
69
68
ENV PATH=$CONDA_DIR/bin:$PATH \
70
69
HOME=/home/$NB_USER \
71
- CONDA_VERSION="${conda_version}"
70
+ CONDA_VERSION="${conda_version}" \
71
+ MINIFORGE_VERSION="${miniforge_version}"
72
72
73
73
# Copy a script that we will use to correct permissions after running certain commands
74
74
COPY fix-permissions /usr/local/bin/fix-permissions
@@ -102,6 +102,7 @@ RUN mkdir "/home/$NB_USER/work" && \
102
102
# Install conda as jovyan and check the sha256 sum provided on the download site
103
103
WORKDIR /tmp
104
104
105
+ # Prerequisites installation: conda, pip, tini
105
106
RUN wget --quiet "https://github.com/conda-forge/miniforge/releases/download/${miniforge_version}/${miniforge_installer}" && \
106
107
echo "${miniforge_checksum} *${miniforge_installer}" | sha256sum --check && \
107
108
/bin/bash "${miniforge_installer}" -f -b -p $CONDA_DIR && \
@@ -112,18 +113,14 @@ RUN wget --quiet "https://github.com/conda-forge/miniforge/releases/download/${m
112
113
conda config --system --set show_channel_urls true && \
113
114
if [ ! $PYTHON_VERSION = 'default' ]; then conda install --yes python=$PYTHON_VERSION; fi && \
114
115
conda list python | grep '^python ' | tr -s ' ' | cut -d '.' -f 1,2 | sed 's/$/.*/' >> $CONDA_DIR/conda-meta/pinned && \
115
- conda install --quiet --yes "conda=${CONDA_VERSION}" && \
116
- conda install --quiet --yes pip && \
116
+ conda install --quiet --yes \
117
+ "conda=${CONDA_VERSION}" \
118
+ 'pip' \
119
+ 'tini=0.18.0' && \
117
120
conda update --all --quiet --yes && \
118
- conda clean --all -f -y && \
119
- rm -rf /home/$NB_USER/.cache/yarn && \
120
- fix-permissions $CONDA_DIR && \
121
- fix-permissions /home/$NB_USER
122
-
123
- # Install Tini
124
- RUN conda install --quiet --yes 'tini=0.18.0' && \
125
121
conda list tini | grep tini | tr -s ' ' | cut -d ' ' -f 1,2 >> $CONDA_DIR/conda-meta/pinned && \
126
122
conda clean --all -f -y && \
123
+ rm -rf /home/$NB_USER/.cache/yarn && \
127
124
fix-permissions $CONDA_DIR && \
128
125
fix-permissions /home/$NB_USER
129
126
@@ -134,8 +131,8 @@ RUN conda install --quiet --yes 'tini=0.18.0' && \
134
131
# Do all this in a single RUN command to avoid duplicating all of the
135
132
# files across image layers when the permissions change
136
133
RUN conda install --quiet --yes \
137
- 'notebook=6.1.4 ' \
138
- 'jupyterhub=1.2.1 ' \
134
+ 'notebook=6.1.5 ' \
135
+ 'jupyterhub=1.2.2 ' \
139
136
'jupyterlab=2.2.9' && \
140
137
conda clean --all -f -y && \
141
138
npm cache clean --force && \
0 commit comments