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
@@ -46,7 +46,6 @@ 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