Skip to content

Commit b7d382f

Browse files
committed
CUDA images: Correct image license
- Sync startup scripts with jupyter/docker-stacks
1 parent a31a51f commit b7d382f

15 files changed

+66
-62
lines changed

base/.gitlab-ci.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ build:latest-linux-amd64:
6868
--build-arg BUILD_ON_IMAGE
6969
--build-arg PYTHON_VERSION
7070
--build-arg CUDA_IMAGE_FLAVOR
71+
--build-arg CUDA_IMAGE_LICENSE
7172
--build-arg BUILD_START=$(date -uIseconds)
7273
-t $CI_APP_REPO:$CI_APP_TAG-linux-amd64
7374
-t $CI_APP_REPO:latest-linux-amd64
@@ -113,6 +114,7 @@ build:latest-linux-arm64v8:
113114
--build-arg BUILD_ON_IMAGE
114115
--build-arg PYTHON_VERSION
115116
--build-arg CUDA_IMAGE_FLAVOR
117+
--build-arg CUDA_IMAGE_LICENSE
116118
--build-arg BUILD_START=$(date -uIseconds)
117119
-t $CI_APP_REPO:$CI_APP_TAG-linux-arm64v8
118120
-t $CI_APP_REPO:latest-linux-arm64v8
@@ -157,6 +159,7 @@ build:version-linux-amd64:
157159
--build-arg BASE_IMAGE_TAG
158160
--build-arg BUILD_ON_IMAGE
159161
--build-arg CUDA_IMAGE_FLAVOR
162+
--build-arg CUDA_IMAGE_LICENSE
160163
--build-arg BUILD_START=$(date -uIseconds)
161164
-t $CI_APP_REPO:$CI_APP_TAG-linux-amd64
162165
-f $PYTHON_VERSION.Dockerfile .
@@ -197,6 +200,7 @@ build:version-linux-arm64v8:
197200
--build-arg BASE_IMAGE_TAG
198201
--build-arg BUILD_ON_IMAGE
199202
--build-arg CUDA_IMAGE_FLAVOR
203+
--build-arg CUDA_IMAGE_LICENSE
200204
--build-arg BUILD_START=$(date -uIseconds)
201205
-t $CI_APP_REPO:$CI_APP_TAG-linux-arm64v8
202206
-f $PYTHON_VERSION.Dockerfile .

base/.pre/fetch-scripts.sh

Lines changed: 0 additions & 19 deletions
This file was deleted.

base/3.11.7.Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG GIT_VERSION=2.43.0
1414
ARG GIT_LFS_VERSION=3.4.1
1515
ARG PANDOC_VERSION=3.1.11
1616

17-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
17+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
1818

1919
ARG NB_UID
2020
ENV NB_GID=100
@@ -41,7 +41,7 @@ RUN cp -a /files/etc/skel/. /files/var/backups/skel \
4141
FROM glcr.b-data.ch/git/gsi/${GIT_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} AS gsi
4242
FROM glcr.b-data.ch/git-lfs/glfsi:${GIT_LFS_VERSION} AS glfsi
4343

44-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
44+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
4545

4646
LABEL org.opencontainers.image.licenses="MIT" \
4747
org.opencontainers.image.source="https://gitlab.b-data.ch/jupyterlab/python/docker-stack" \
@@ -65,7 +65,7 @@ ARG BUILD_START
6565

6666
ARG CODE_WORKDIR
6767

68-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
68+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
6969
NB_USER=${NB_USER} \
7070
NB_UID=${NB_UID} \
7171
JUPYTERHUB_VERSION=${JUPYTERHUB_VERSION} \

base/3.11.8.Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG GIT_VERSION=2.43.0
1414
ARG GIT_LFS_VERSION=3.4.1
1515
ARG PANDOC_VERSION=3.1.11
1616

17-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
17+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
1818

1919
ARG NB_UID
2020
ENV NB_GID=100
@@ -41,7 +41,7 @@ RUN cp -a /files/etc/skel/. /files/var/backups/skel \
4141
FROM glcr.b-data.ch/git/gsi/${GIT_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} AS gsi
4242
FROM glcr.b-data.ch/git-lfs/glfsi:${GIT_LFS_VERSION} AS glfsi
4343

44-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
44+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
4545

4646
LABEL org.opencontainers.image.licenses="MIT" \
4747
org.opencontainers.image.source="https://gitlab.b-data.ch/jupyterlab/python/docker-stack" \
@@ -65,7 +65,7 @@ ARG BUILD_START
6565

6666
ARG CODE_WORKDIR
6767

68-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
68+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
6969
NB_USER=${NB_USER} \
7070
NB_UID=${NB_UID} \
7171
JUPYTERHUB_VERSION=${JUPYTERHUB_VERSION} \

base/3.12.1.Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG GIT_VERSION=2.43.0
1414
ARG GIT_LFS_VERSION=3.4.1
1515
ARG PANDOC_VERSION=3.1.11
1616

17-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
17+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
1818

1919
ARG NB_UID
2020
ENV NB_GID=100
@@ -41,7 +41,7 @@ RUN cp -a /files/etc/skel/. /files/var/backups/skel \
4141
FROM glcr.b-data.ch/git/gsi/${GIT_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} AS gsi
4242
FROM glcr.b-data.ch/git-lfs/glfsi:${GIT_LFS_VERSION} AS glfsi
4343

44-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
44+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
4545

4646
LABEL org.opencontainers.image.licenses="MIT" \
4747
org.opencontainers.image.source="https://gitlab.b-data.ch/jupyterlab/python/docker-stack" \
@@ -65,7 +65,7 @@ ARG BUILD_START
6565

6666
ARG CODE_WORKDIR
6767

68-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
68+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
6969
NB_USER=${NB_USER} \
7070
NB_UID=${NB_UID} \
7171
JUPYTERHUB_VERSION=${JUPYTERHUB_VERSION} \

base/latest.Dockerfile

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG GIT_VERSION=2.44.0
1414
ARG GIT_LFS_VERSION=3.5.1
1515
ARG PANDOC_VERSION=3.1.11
1616

17-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
17+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} AS files
1818

1919
ARG NB_UID
2020
ENV NB_GID=100
@@ -29,6 +29,7 @@ COPY conf/shell /files
2929
COPY conf/user /files
3030
COPY scripts /files
3131

32+
## Copy content of skel directory to backup
3233
RUN cp -a /files/etc/skel/. /files/var/backups/skel \
3334
&& chown -R ${NB_UID}:${NB_GID} /files/var/backups/skel \
3435
## Copy custom fonts
@@ -37,6 +38,15 @@ RUN cp -a /files/etc/skel/. /files/var/backups/skel \
3738
/files/usr/local/share/jupyter/lab/static/assets \
3839
&& cp -a /files/opt/code-server/src/browser/media/fonts \
3940
/files/usr/local/share/jupyter/lab/static/assets \
41+
&& if [ -n "${CUDA_VERSION}" ]; then \
42+
## Use entrypoint of CUDA image
43+
mv /opt/nvidia/entrypoint.d /opt/nvidia/nvidia_entrypoint.sh \
44+
/files/usr/local/bin; \
45+
mv /files/usr/local/bin/start.sh \
46+
/files/usr/local/bin/entrypoint.d/99-start.sh; \
47+
mv /files/usr/local/bin/nvidia_entrypoint.sh \
48+
/files/usr/local/bin/start.sh; \
49+
fi \
4050
## Ensure file modes are correct when using CI
4151
## Otherwise set to 777 in the target image
4252
&& find /files -type d -exec chmod 755 {} \; \
@@ -47,9 +57,12 @@ RUN cp -a /files/etc/skel/. /files/var/backups/skel \
4757
FROM glcr.b-data.ch/git/gsi/${GIT_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} AS gsi
4858
FROM glcr.b-data.ch/git-lfs/glfsi:${GIT_LFS_VERSION} AS glfsi
4959

50-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
60+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR}
61+
62+
ARG CUDA_IMAGE_LICENSE
63+
ARG IMAGE_LICENSE=${CUDA_IMAGE_LICENSE:-MIT}
5164

52-
LABEL org.opencontainers.image.licenses="MIT" \
65+
LABEL org.opencontainers.image.licenses="$IMAGE_LICENSE" \
5366
org.opencontainers.image.source="https://gitlab.b-data.ch/jupyterlab/python/docker-stack" \
5467
org.opencontainers.image.vendor="b-data GmbH" \
5568
org.opencontainers.image.authors="Olivier Benz <olivier.benz@b-data.ch>"
@@ -71,7 +84,7 @@ ARG BUILD_START
7184

7285
ARG CODE_WORKDIR
7386

74-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
87+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}${CUDA_IMAGE_FLAVOR:+-}${CUDA_IMAGE_FLAVOR} \
7588
NB_USER=${NB_USER} \
7689
NB_UID=${NB_UID} \
7790
JUPYTERHUB_VERSION=${JUPYTERHUB_VERSION} \

base/scripts/usr/local/bin/run-hooks.sh

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,31 +10,31 @@ if [ "$#" -ne 1 ]; then
1010
return 1
1111
fi
1212

13-
if [[ ! -d "${1}" ]] ; then
13+
if [[ ! -d "${1}" ]]; then
1414
echo "Directory ${1} doesn't exist or is not a directory"
1515
return 1
1616
fi
1717

1818
echo "Running hooks in: ${1} as uid: $(id -u) gid: $(id -g)"
1919
for f in "${1}/"*; do
20-
# Hadling a case when the directory is empty
20+
# Handling a case when the directory is empty
2121
[ -e "${f}" ] || continue
2222
case "${f}" in
2323
*.sh)
2424
echo "Sourcing shell script: ${f}"
2525
# shellcheck disable=SC1090
2626
source "${f}"
2727
# shellcheck disable=SC2181
28-
if [ $? -ne 0 ] ; then
28+
if [ $? -ne 0 ]; then
2929
echo "${f} has failed, continuing execution"
3030
fi
3131
;;
3232
*)
33-
if [ -x "${f}" ] ; then
33+
if [ -x "${f}" ]; then
3434
echo "Running executable: ${f}"
3535
"${f}"
3636
# shellcheck disable=SC2181
37-
if [ $? -ne 0 ] ; then
37+
if [ $? -ne 0 ]; then
3838
echo "${f} has failed, continuing execution"
3939
fi
4040
else

base/scripts/usr/local/bin/start.sh

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,19 @@
44

55
set -e
66

7+
if [ -n "${CUDA_IMAGE}" ]; then
8+
echo
9+
print_banner_text "=" "JUPYTER"
10+
echo
11+
fi
12+
713
function run_user_group() {
814
runuser -u "${NB_USER}" -g "$(id -gn "${NB_USER}")" -G "users" -- "$@"
915
}
1016

11-
# The _log function is used for everything this script wants to log. It will
12-
# always log errors and warnings, but can be silenced for other messages
13-
# by setting JUPYTER_DOCKER_STACKS_QUIET environment variable.
17+
# The _log function is used for everything this script wants to log.
18+
# It will always log errors and warnings but can be silenced for other messages
19+
# by setting the JUPYTER_DOCKER_STACKS_QUIET environment variable.
1420
_log () {
1521
if [[ "$*" == "ERROR:"* ]] || [[ "$*" == "WARNING:"* ]] || [[ "${JUPYTER_DOCKER_STACKS_QUIET}" == "" ]]; then
1622
echo "$@"
@@ -57,28 +63,28 @@ source /usr/local/bin/run-hooks.sh /usr/local/bin/start-notebook.d
5763
# things before we run the command passed to start.sh as the desired user
5864
# (NB_USER).
5965
#
60-
if [ "$(id -u)" == 0 ] ; then
66+
if [ "$(id -u)" == 0 ]; then
6167
# Environment variables:
6268
# - NB_USER: the desired username and associated home folder
6369
# - NB_UID: the desired user id
6470
# - NB_GID: a group id we want our user to belong to
6571
# - NB_GROUP: a group name we want for the group
6672
# - GRANT_SUDO: a boolean ("1" or "yes") to grant the user sudo rights
6773
# - CHOWN_HOME: a boolean ("1" or "yes") to chown the user's home folder
68-
# - CHOWN_EXTRA: a comma separated list of paths to chown
74+
# - CHOWN_EXTRA: a comma-separated list of paths to chown
6975
# - CHOWN_HOME_OPTS / CHOWN_EXTRA_OPTS: arguments to the chown commands
7076
# - CHMOD_HOME: a boolean ("1" or "yes") to chmod the user's home folder
7177
# - CHMOD_HOME_MODE: mode argument to the chmod command
7278

7379
# Refit the jovyan user to the desired the user (NB_USER)
74-
if id jovyan &> /dev/null ; then
80+
if id jovyan &> /dev/null; then
7581
if ! usermod --home "/home/${NB_USER}${DOMAIN:+@$DOMAIN}" --login "${NB_USER}" jovyan 2>&1 | grep "no changes" > /dev/null; then
7682
_log "Updated the jovyan user:"
7783
_log "- username: jovyan -> ${NB_USER}"
7884
_log "- home dir: /home/jovyan -> /home/${NB_USER}${DOMAIN:+@$DOMAIN}"
7985
fi
8086
elif ! id -u "${NB_USER}" &> /dev/null; then
81-
_log "ERROR: Neither the jovyan user or '${NB_USER}' exists. This could be the result of stopping and starting, the container with a different NB_USER environment variable."
87+
_log "ERROR: Neither the jovyan user nor '${NB_USER}' exists. This could be the result of stopping and starting, the container with a different NB_USER environment variable."
8288
exit 1
8389
fi
8490

@@ -123,7 +129,7 @@ if [ "$(id -u)" == 0 ] ; then
123129
# Note: Allows to run the container as root.
124130
# Use case: Docker/Podman in rootless mode.
125131

126-
# Move or symlink the jovyan home directory to the desired users home
132+
# Move or symlink the jovyan home directory to the desired user's home
127133
# directory if it doesn't already exist, and update the current working
128134
# directory to the new location if needed.
129135
if [[ "${NB_USER}" != "jovyan" ]]; then
@@ -220,7 +226,7 @@ if [ "$(id -u)" == 0 ] ; then
220226
fi
221227

222228
# Optionally grant passwordless sudo rights for the desired user
223-
if [[ "$GRANT_SUDO" == "1" || "$GRANT_SUDO" == "yes" ]]; then
229+
if [[ "${GRANT_SUDO}" == "1" || "${GRANT_SUDO}" == "yes" ]]; then
224230
_log "Granting ${NB_USER} passwordless sudo rights!"
225231
echo "${NB_USER} ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/added-by-start-script
226232
fi
@@ -255,7 +261,7 @@ if [ "$(id -u)" == 0 ] ; then
255261
# - We use the `--set-home` flag to set the HOME variable appropriately.
256262
#
257263
# - To reduce the default list of variables deleted by sudo, we could have
258-
# used `env_delete` from /etc/sudoers. It has higher priority than the
264+
# used `env_delete` from /etc/sudoers. It has a higher priority than the
259265
# `--preserve-env` flag and the `env_keep` configuration.
260266
#
261267
# - We preserve LD_LIBRARY_PATH, PATH and PYTHONPATH explicitly. Note however that sudo
@@ -278,7 +284,7 @@ else
278284
# Attempt to ensure the user uid we currently run as has a named entry in
279285
# the /etc/passwd file, as it avoids software crashing on hard assumptions
280286
# on such entry. Writing to the /etc/passwd was allowed for the root group
281-
# from the Dockerfile during build.
287+
# from the Dockerfile during the build.
282288
#
283289
# ref: https://github.com/jupyter/docker-stacks/issues/552
284290
if ! whoami &> /dev/null; then

common/subtags/devtools/3.11.7.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ARG CODE_BUILTIN_EXTENSIONS_DIR=/opt/code-server/lib/vscode/extensions
88

99
FROM glcr.b-data.ch/nodejs/nsi/${NODE_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} as nsi
1010

11-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}
11+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}
1212

1313
ARG DEBIAN_FRONTEND=noninteractive
1414

@@ -18,7 +18,7 @@ ARG NODE_VERSION
1818
ARG CODE_BUILTIN_EXTENSIONS_DIR
1919
ARG BUILD_START
2020

21-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION} \
21+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION} \
2222
NODE_VERSION=${NODE_VERSION} \
2323
BUILD_DATE=${BUILD_START}
2424

common/subtags/devtools/3.11.8.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ARG CODE_BUILTIN_EXTENSIONS_DIR=/opt/code-server/lib/vscode/extensions
88

99
FROM glcr.b-data.ch/nodejs/nsi/${NODE_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} as nsi
1010

11-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}
11+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}
1212

1313
ARG DEBIAN_FRONTEND=noninteractive
1414

@@ -18,7 +18,7 @@ ARG NODE_VERSION
1818
ARG CODE_BUILTIN_EXTENSIONS_DIR
1919
ARG BUILD_START
2020

21-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION} \
21+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION} \
2222
NODE_VERSION=${NODE_VERSION} \
2323
BUILD_DATE=${BUILD_START}
2424

common/subtags/devtools/3.12.1.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ARG CODE_BUILTIN_EXTENSIONS_DIR=/opt/code-server/lib/vscode/extensions
88

99
FROM glcr.b-data.ch/nodejs/nsi/${NODE_VERSION}/${BASE_IMAGE}:${BASE_IMAGE_TAG} as nsi
1010

11-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}
11+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}
1212

1313
ARG DEBIAN_FRONTEND=noninteractive
1414

@@ -18,7 +18,7 @@ ARG NODE_VERSION
1818
ARG CODE_BUILTIN_EXTENSIONS_DIR
1919
ARG BUILD_START
2020

21-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION} \
21+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION} \
2222
NODE_VERSION=${NODE_VERSION} \
2323
BUILD_DATE=${BUILD_START}
2424

scipy/3.11.7.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ ARG CODE_BUILTIN_EXTENSIONS_DIR=/opt/code-server/lib/vscode/extensions
44
ARG QUARTO_VERSION=1.4.549
55
ARG CTAN_REPO=https://www.texlive.info/tlnet-archive/2024/02/06/tlnet
66

7-
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION}
7+
FROM ${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION}
88

99
ARG DEBIAN_FRONTEND=noninteractive
1010

@@ -16,7 +16,7 @@ ARG BUILD_START
1616

1717
USER root
1818

19-
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:$PYTHON_VERSION} \
19+
ENV PARENT_IMAGE=${BUILD_ON_IMAGE}${PYTHON_VERSION:+:}${PYTHON_VERSION} \
2020
QUARTO_VERSION=${QUARTO_VERSION} \
2121
CTAN_REPO=${CTAN_REPO} \
2222
BUILD_DATE=${BUILD_START}

0 commit comments

Comments
 (0)