diff --git a/Dockerfile b/Dockerfile index 0dcb91c2755af44fe364a15154b06d5356fcf621..6352600efa653c4febcc967fc7343d719e5914c5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,53 @@ + FROM ghcr.io/linuxserver/baseimage-ubuntu:jammy +ENV NVARCH x86_64 +ENV NVIDIA_REQUIRE_CUDA "cuda>=11.8 brand=tesla,driver>=470,driver<471 brand=unknown,driver>=470,driver<471 brand=nvidia,driver>=470,driver<471 brand=nvidiartx,driver>=470,driver<471 brand=geforce,driver>=470,driver<471 brand=geforcertx,driver>=470,driver<471 brand=quadro,driver>=470,driver<471 brand=quadrortx,driver>=470,driver<471 brand=titan,driver>=470,driver<471 brand=titanrtx,driver>=470,driver<471" +ENV NV_CUDA_CUDART_VERSION 11.8.89-1 +ENV NV_CUDA_COMPAT_PACKAGE cuda-compat-11-8 +ENV NVIDIA_REQUIRE_CUDA "cuda>=11.8" +ENV NV_CUDA_CUDART_VERSION 11.8.89-1 + +RUN apt-get update && apt-get install -y --no-install-recommends \ + gnupg2 curl ca-certificates && \ + curl -fsSLO https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/${NVARCH}/cuda-keyring_1.0-1_all.deb && \ + dpkg -i cuda-keyring_1.0-1_all.deb && \ + apt-get purge --autoremove -y curl \ + && rm -rf /var/lib/apt/lists/* + +ENV CUDA_VERSION 11.8.0 + +# For libraries in the cuda-compat-* package: https://docs.nvidia.com/cuda/eula/index.html#attachment-a +RUN apt-get update && apt-get install -y --no-install-recommends \ + cuda-cudart-11-8=${NV_CUDA_CUDART_VERSION} \ + ${NV_CUDA_COMPAT_PACKAGE} \ + && rm -rf /var/lib/apt/lists/* + +# Required for nvidia-docker v1 +RUN echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf \ + && echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf + +ENV PATH /usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH} +ENV LD_LIBRARY_PATH /usr/local/nvidia/lib:/usr/local/nvidia/lib64 + +# nvidia-container-runtime +ENV NVIDIA_VISIBLE_DEVICES all +ENV NVIDIA_DRIVER_CAPABILITIES compute,utility + # set version label -ARG BUILD_DATE -ARG VERSION -ARG CODE_RELEASE -ARG SQLITE_VERSION -ARG DUCKDB_VERSION +ARG BUILD_DATE= +ARG VERSION= +ARG CODE_RELEASE= +ARG SQLITE_VERSION= +ARG DUCKDB_VERSION= LABEL build_version="TWM vscode server:- ${VERSION} Build-date:- ${BUILD_DATE}" LABEL maintainer="sebastian.schuch@h-da.de" # environment settings ARG DEBIAN_FRONTEND="noninteractive" ENV HOME="/config" +RUN apt-get update -yq +RUN apt-get install curl -yq RUN \ echo "**** install runtime dependencies ****" && \ @@ -89,3 +125,14 @@ COPY /root / # ports and volumes EXPOSE 8443 + + +RUN apt-get update && apt-get install -yq xfce4 xfce4-terminal fonts-firacode fonts-noto-color-emoji autocutsel +RUN apt-get update && apt-get install -yq dialog apt-utils tigervnc-standalone-server tigervnc-common tigervnc-tools + +RUN apt-get install -yq r-base +RUN apt-get install -yq gdebi-core +RUN cd /opt/ && wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2024.09.0-375-amd64.deb +RUN cd /opt/ && gdebi -n rstudio-server-2024.09.0-375-amd64.deb + +RUN pip3 install jupyterlab && pip3 install notebook