-
-
Notifications
You must be signed in to change notification settings - Fork 234
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #154 from iot-salzburg/v1.8_cuda-12.5_ubuntu-22.04
Updated packages V1.8 with cuda 12.5 ubuntu 22.04
- Loading branch information
Showing
12 changed files
with
103 additions
and
254 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,8 +7,9 @@ | |
|
||
# Use NVIDIA CUDA as base image and run the same installation as in the other packages. | ||
# The version of cuda must match those of the packages installed in src/Dockerfile.gpulibs | ||
FROM nvidia/cuda:12.2.2-cudnn8-runtime-ubuntu22.04 | ||
LABEL authors="Christoph Schranz <[email protected]>, Mathematical Michael <[email protected]>" | ||
FROM nvidia/cuda:12.5.1-cudnn-runtime-ubuntu22.04 | ||
LABEL authors="Christoph Schranz <[email protected]>" | ||
|
||
# This is a concatenated Dockerfile, the maintainers of subsequent sections may vary. | ||
RUN chmod 1777 /tmp && chmod 1777 /var/tmp | ||
|
||
|
@@ -41,7 +42,7 @@ USER root | |
|
||
# Install all OS dependencies for the Server that starts | ||
# but lacks all features (e.g., download as all possible file formats) | ||
ENV DEBIAN_FRONTEND noninteractive | ||
ENV DEBIAN_FRONTEND=noninteractive | ||
RUN apt-get update --yes && \ | ||
# - `apt-get upgrade` is run to patch known vulnerabilities in system packages | ||
# as the Ubuntu base image is rebuilt too seldom sometimes (less than once a month) | ||
|
@@ -51,6 +52,10 @@ RUN apt-get update --yes && \ | |
bzip2 \ | ||
ca-certificates \ | ||
locales \ | ||
# - `netbase` provides /etc/{protocols,rpc,services}, part of POSIX | ||
# and required by various C functions like getservbyname and getprotobyname | ||
# https://github.com/jupyter/docker-stacks/pull/2129 | ||
netbase \ | ||
sudo \ | ||
# - `tini` is installed as a helpful container entrypoint, | ||
# that reaps zombie processes and such of the actual executable we want to start | ||
|
@@ -85,7 +90,7 @@ RUN sed -i 's/^#force_color_prompt=yes/force_color_prompt=yes/' /etc/skel/.bashr | |
# and docs: https://docs.conda.io/projects/conda/en/latest/dev-guide/deep-dives/activation.html | ||
echo 'eval "$(conda shell.bash hook)"' >> /etc/skel/.bashrc | ||
|
||
# Create NB_USER with name jovyan user with UID=1000 and in the 'users' group | ||
# Create "${NB_USER}" user (`jovyan` by default) with UID="${NB_UID}" (`1000` by default) and in the 'users' group | ||
# and make sure these dirs are writable by the `users` group. | ||
RUN echo "auth requisite pam_deny.so" >> /etc/pam.d/su && \ | ||
sed -i.bak -e 's/^%admin/#%admin/' /etc/sudoers && \ | ||
|
@@ -134,9 +139,9 @@ RUN set -x && \ | |
--root-prefix="${CONDA_DIR}" \ | ||
--prefix="${CONDA_DIR}" \ | ||
--yes \ | ||
"${PYTHON_SPECIFIER}" \ | ||
'jupyter_core' \ | ||
'mamba' \ | ||
'jupyter_core' && \ | ||
"${PYTHON_SPECIFIER}" && \ | ||
rm -rf /tmp/bin/ && \ | ||
# Pin major.minor version of python | ||
# https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-pkgs.html#preventing-packages-from-updating-pinning | ||
|
@@ -199,18 +204,18 @@ RUN apt-get update --yes && \ | |
|
||
USER ${NB_UID} | ||
|
||
# Install JupyterLab, Jupyter Notebook, JupyterHub and NBClassic | ||
# Install JupyterHub, JupyterLab, NBClassic and Jupyter Notebook | ||
# Generate a Jupyter Server config | ||
# Cleanup temporary files | ||
# Correct permissions | ||
# Do all this in a single RUN command to avoid duplicating all of the | ||
# files across image layers when the permissions change | ||
WORKDIR /tmp | ||
RUN mamba install --yes \ | ||
'jupyterlab' \ | ||
'notebook' \ | ||
'jupyterhub' \ | ||
'nbclassic' && \ | ||
'jupyterlab' \ | ||
'nbclassic' \ | ||
'notebook' && \ | ||
jupyter server --generate-config && \ | ||
mamba clean --all -f -y && \ | ||
npm cache clean --force && \ | ||
|
@@ -339,7 +344,7 @@ RUN mamba install --yes \ | |
'dask' \ | ||
'dill' \ | ||
'h5py' \ | ||
'ipympl'\ | ||
'ipympl' \ | ||
'ipywidgets' \ | ||
'jupyterlab-git' \ | ||
'matplotlib-base' \ | ||
|
@@ -357,7 +362,7 @@ RUN mamba install --yes \ | |
'sqlalchemy' \ | ||
'statsmodels' \ | ||
'sympy' \ | ||
'widgetsnbextension'\ | ||
'widgetsnbextension' \ | ||
'xlrd' && \ | ||
mamba clean --all -f -y && \ | ||
fix-permissions "${CONDA_DIR}" && \ | ||
|
@@ -383,7 +388,7 @@ WORKDIR "${HOME}" | |
########################## Dependency: gpulibs ############################# | ||
############################################################################ | ||
|
||
LABEL maintainer="Christoph Schranz <[email protected]>, Mathematical Michael <[email protected]>" | ||
LABEL authors="Christoph Schranz <[email protected]>" | ||
|
||
# Install dependencies for e.g. PyTorch | ||
RUN mamba install --quiet --yes \ | ||
|
@@ -399,7 +404,7 @@ RUN mamba install --quiet --yes \ | |
# using device_lib.list_local_devices() the cudNN version is shown, adapt version to tested compat | ||
USER ${NB_UID} | ||
RUN pip install --upgrade pip && \ | ||
pip install --no-cache-dir tensorflow==2.15.1 keras==2.15.0 && \ | ||
pip install --no-cache-dir tensorflow==2.18.0 keras==3.6.0 && \ | ||
fix-permissions "${CONDA_DIR}" && \ | ||
fix-permissions "/home/${NB_USER}" | ||
|
||
|
@@ -410,11 +415,11 @@ RUN pip install --upgrade pip && \ | |
# && torchviz==0.0.2 --extra-index-url https://download.pytorch.org/whl/cu121 | ||
RUN set -ex \ | ||
&& buildDeps=' \ | ||
torch==2.2.2 \ | ||
torchvision==0.17.2 \ | ||
torchaudio==2.2.2 \ | ||
torch==2.5.1 \ | ||
torchvision==0.20.1 \ | ||
torchaudio==2.5.1 \ | ||
' \ | ||
&& pip install --no-cache-dir $buildDeps --extra-index-url https://download.pytorch.org/whl/cu121 \ | ||
&& pip install --no-cache-dir $buildDeps --extra-index-url https://download.pytorch.org/whl/cu124 \ | ||
&& fix-permissions "${CONDA_DIR}" \ | ||
&& fix-permissions "/home/${NB_USER}" | ||
|
||
|
@@ -435,8 +440,9 @@ RUN pip install --no-cache-dir nvidia-pyindex && \ | |
fix-permissions "${CONDA_DIR}" && \ | ||
fix-permissions "/home/${NB_USER}" | ||
|
||
# Install cuda-nvcc with sepecific version, see here: https://anaconda.org/nvidia/cuda-nvcc/labels | ||
RUN mamba install -c nvidia cuda-nvcc=12.2.140 -y && \ | ||
# Install cuda-nvcc with sepecific version, see here: | ||
# https://anaconda.org/nvidia/cuda-nvcc/labels | ||
RUN mamba install -c nvidia cuda-nvcc=12.5.82 -y && \ | ||
mamba clean --all -f -y && \ | ||
fix-permissions $CONDA_DIR && \ | ||
fix-permissions /home/$NB_USER | ||
|
@@ -450,7 +456,7 @@ USER $NB_UID | |
############################ Useful packages ############################### | ||
############################################################################ | ||
|
||
LABEL authors="Christoph Schranz <[email protected]>, Mathematical Michael <[email protected]>" | ||
LABEL authors="Christoph Schranz <[email protected]>" | ||
|
||
USER root | ||
|
||
|
@@ -463,7 +469,7 @@ USER $NB_UID | |
RUN set -ex \ | ||
&& buildDeps=' \ | ||
graphviz==0.20.3 \ | ||
pytest==8.1.1 \ | ||
pytest==8.3.3 \ | ||
' \ | ||
&& pip install --no-cache-dir $buildDeps \ | ||
&& fix-permissions "${CONDA_DIR}" \ | ||
|
@@ -472,8 +478,8 @@ RUN set -ex \ | |
# upgrade jupyter-server for compatibility | ||
RUN set -ex \ | ||
&& buildDeps=' \ | ||
distributed==2024.4.1 \ | ||
jupyter-server==2.13 \ | ||
distributed==2024.11.2 \ | ||
jupyter-server==2.14.2 \ | ||
' \ | ||
&& pip install --no-cache-dir $buildDeps \ | ||
&& fix-permissions "${CONDA_DIR}" \ | ||
|
@@ -483,15 +489,15 @@ RUN set -ex \ | |
&& buildDeps=' \ | ||
# install extension manager | ||
jupyter_contrib_nbextensions==0.7.0 \ | ||
jupyter_nbextensions_configurator==0.6.3 \ | ||
jupyter_nbextensions_configurator==0.6.4 \ | ||
# install git extension | ||
jupyterlab-git==0.50.0 \ | ||
jupyterlab-git==0.50.2 \ | ||
# install plotly extension | ||
plotly==5.20.0 \ | ||
plotly==5.24.1 \ | ||
# install drawio and graphical extensions, not compatible with Jupyterlab 4.X yet | ||
# ipydrawio==1.3.0 \ | ||
ipyleaflet==0.18.2 \ | ||
ipywidgets==8.1.2 \ | ||
ipyleaflet==0.19.2 \ | ||
ipywidgets==8.1.5 \ | ||
# install spell checker | ||
jupyterlab-spellchecker==0.8.4 \ | ||
' \ | ||
|
Submodule docker-stacks
updated
36 files
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.