Christof Seyfferth cseyfferth
  • Joined on 2020-08-29

test/pyspark-notebook (latest)

Published 2024-03-01 16:36:33 +01:00 by cseyfferth

Installation

docker pull git.seyfferth.dev/cseyfferth/test/pyspark-notebook:latest
sha256:beb6921aebd301fb4a15a143627ac3ae65f98342d60f8bab0a796c05e18dfbc0

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=22.04
ADD file:0ad2ee2cfb186802f49c9bf4148674d1c6fc201f83478ec01ffaa7086d491323 in /
CMD ["/bin/bash"]
ENV NVARCH=x86_64
ENV NVIDIA_REQUIRE_CUDA=cuda>=11.8 brand=tesla,driver>=450,driver<451 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 brand=tesla,driver>=510,driver<511 brand=unknown,driver>=510,driver<511 brand=nvidia,driver>=510,driver<511 brand=nvidiartx,driver>=510,driver<511 brand=geforce,driver>=510,driver<511 brand=geforcertx,driver>=510,driver<511 brand=quadro,driver>=510,driver<511 brand=quadrortx,driver>=510,driver<511 brand=titan,driver>=510,driver<511 brand=titanrtx,driver>=510,driver<511 brand=tesla,driver>=515,driver<516 brand=unknown,driver>=515,driver<516 brand=nvidia,driver>=515,driver<516 brand=nvidiartx,driver>=515,driver<516 brand=geforce,driver>=515,driver<516 brand=geforcertx,driver>=515,driver<516 brand=quadro,driver>=515,driver<516 brand=quadrortx,driver>=515,driver<516 brand=titan,driver>=515,driver<516 brand=titanrtx,driver>=515,driver<516
ENV NV_CUDA_CUDART_VERSION=11.8.89-1
ENV NV_CUDA_COMPAT_PACKAGE=cuda-compat-11-8
ARG TARGETARCH
LABEL maintainer=NVIDIA CORPORATION <cudatools@nvidia.com>
RUN |1 TARGETARCH=amd64 /bin/sh -c 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/* # buildkit
ENV CUDA_VERSION=11.8.0
RUN |1 TARGETARCH=amd64 /bin/sh -c 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/* # buildkit
RUN |1 TARGETARCH=amd64 /bin/sh -c echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf # buildkit
ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64
COPY NGC-DL-CONTAINER-LICENSE / # buildkit
ENV NVIDIA_VISIBLE_DEVICES=all
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
ENV DEBIAN_FRONTEND=noninteractive
ENV LANG=C.UTF-8
COPY setup.sources.sh /setup.sources.sh # buildkit
COPY setup.packages.sh /setup.packages.sh # buildkit
COPY gpu.packages.txt /gpu.packages.txt # buildkit
RUN /bin/sh -c /setup.sources.sh # buildkit
RUN /bin/sh -c /setup.packages.sh /gpu.packages.txt # buildkit
ARG PYTHON_VERSION=python3.11
ARG TENSORFLOW_PACKAGE=tf-nightly
COPY setup.python.sh /setup.python.sh # buildkit
COPY gpu.requirements.txt /gpu.requirements.txt # buildkit
RUN |2 PYTHON_VERSION=python3.11 TENSORFLOW_PACKAGE=tf-nightly /bin/sh -c /setup.python.sh $PYTHON_VERSION /gpu.requirements.txt # buildkit
RUN |2 PYTHON_VERSION=python3.11 TENSORFLOW_PACKAGE=tf-nightly /bin/sh -c pip install --no-cache-dir ${TENSORFLOW_PACKAGE} # buildkit
COPY setup.cuda.sh /setup.cuda.sh # buildkit
RUN |2 PYTHON_VERSION=python3.11 TENSORFLOW_PACKAGE=tf-nightly /bin/sh -c /setup.cuda.sh # buildkit
COPY bashrc /etc/bash.bashrc # buildkit
RUN |2 PYTHON_VERSION=python3.11 TENSORFLOW_PACKAGE=tf-nightly /bin/sh -c chmod a+rwx /etc/bash.bashrc # buildkit
LABEL maintainer=Jupyter Project <jupyter@googlegroups.com>
ARG NB_USER=jovyan
ARG NB_UID=1000
ARG NB_GID=100
SHELL [/bin/bash -o pipefail -c]
USER root
ENV DEBIAN_FRONTEND=noninteractive
RUN |3 NB_USER=jovyan NB_UID=1000 NB_GID=100 /bin/bash -o pipefail -c apt-get update --yes && apt-get upgrade --yes && apt-get install --yes --no-install-recommends bzip2 ca-certificates locales sudo tini wget && apt-get clean && rm -rf /var/lib/apt/lists/* && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen # buildkit
ENV CONDA_DIR=/opt/conda SHELL=/bin/bash NB_USER=jovyan NB_UID=1000 NB_GID=100 LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8
ENV PATH=/opt/conda/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/home/jovyan
COPY fix-permissions /usr/local/bin/fix-permissions # buildkit
RUN |3 NB_USER=jovyan NB_UID=1000 NB_GID=100 /bin/bash -o pipefail -c chmod a+rx /usr/local/bin/fix-permissions # buildkit
RUN |3 NB_USER=jovyan NB_UID=1000 NB_GID=100 /bin/bash -o pipefail -c sed -i 's/^#force_color_prompt=yes/force_color_prompt=yes/' /etc/skel/.bashrc && echo 'eval "$(command conda shell.bash hook 2> /dev/null)"' >> /etc/skel/.bashrc # buildkit
RUN |3 NB_USER=jovyan NB_UID=1000 NB_GID=100 /bin/bash -o pipefail -c echo "auth requisite pam_deny.so" >> /etc/pam.d/su && sed -i.bak -e 's/^%admin/#%admin/' /etc/sudoers && sed -i.bak -e 's/^%sudo/#%sudo/' /etc/sudoers && useradd --no-log-init --create-home --shell /bin/bash --uid "${NB_UID}" --no-user-group "${NB_USER}" && mkdir -p "${CONDA_DIR}" && chown "${NB_USER}:${NB_GID}" "${CONDA_DIR}" && chmod g+w /etc/passwd && fix-permissions "${CONDA_DIR}" && fix-permissions "/home/${NB_USER}" # buildkit
USER 1000
ARG PYTHON_VERSION=3.11
RUN |4 NB_USER=jovyan NB_UID=1000 NB_GID=100 PYTHON_VERSION=3.11 /bin/bash -o pipefail -c mkdir "/home/${NB_USER}/work" && fix-permissions "/home/${NB_USER}" # buildkit
COPY initial-condarc /opt/conda/.condarc # buildkit
WORKDIR /tmp
RUN |4 NB_USER=jovyan NB_UID=1000 NB_GID=100 PYTHON_VERSION=3.11 /bin/bash -o pipefail -c set -x && arch=$(uname -m) && if [ "${arch}" = "x86_64" ]; then arch="64"; fi && wget --progress=dot:giga -O /tmp/micromamba.tar.bz2 "https://micromamba.snakepit.net/api/micromamba/linux-${arch}/latest" && tar -xvjf /tmp/micromamba.tar.bz2 --strip-components=1 bin/micromamba && rm /tmp/micromamba.tar.bz2 && PYTHON_SPECIFIER="python=${PYTHON_VERSION}" && if [[ "${PYTHON_VERSION}" == "default" ]]; then PYTHON_SPECIFIER="python"; fi && ./micromamba install --root-prefix="${CONDA_DIR}" --prefix="${CONDA_DIR}" --yes "${PYTHON_SPECIFIER}" 'mamba' 'jupyter_core' && rm micromamba && mamba list python | grep '^python ' | tr -s ' ' | cut -d ' ' -f 1,2 >> "${CONDA_DIR}/conda-meta/pinned" && mamba clean --all -f -y && fix-permissions "${CONDA_DIR}" && fix-permissions "/home/${NB_USER}" # buildkit
ENTRYPOINT ["tini" "-g" "--"]
CMD ["start.sh"]
COPY start.sh /usr/local/bin/ # buildkit
USER root
RUN |4 NB_USER=jovyan NB_UID=1000 NB_GID=100 PYTHON_VERSION=3.11 /bin/bash -o pipefail -c mkdir /usr/local/bin/start-notebook.d && mkdir /usr/local/bin/before-notebook.d # buildkit
USER 1000
WORKDIR /home/jovyan
LABEL maintainer=Jupyter Project <jupyter@googlegroups.com>
SHELL [/bin/bash -o pipefail -c]
USER root
RUN /bin/bash -o pipefail -c apt-get update --yes && apt-get install --yes --no-install-recommends fonts-liberation pandoc run-one && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
USER 1000
WORKDIR /tmp
RUN /bin/bash -o pipefail -c mamba install --yes 'jupyterlab' 'notebook' 'jupyterhub' 'nbclassic' && jupyter server --generate-config && mamba clean --all -f -y && npm cache clean --force && jupyter lab clean && rm -rf "/home/${NB_USER}/.cache/yarn" && fix-permissions "${CONDA_DIR}" && fix-permissions "/home/${NB_USER}" # buildkit
ENV JUPYTER_PORT=8888
EXPOSE map[8888/tcp:{}]
CMD ["start-notebook.sh"]
COPY start-notebook.sh start-singleuser.sh /usr/local/bin/ # buildkit
COPY jupyter_server_config.py docker_healthcheck.py /etc/jupyter/ # buildkit
USER root
RUN /bin/bash -o pipefail -c fix-permissions /etc/jupyter/ # buildkit
HEALTHCHECK &{["CMD-SHELL" "/etc/jupyter/docker_healthcheck.py || exit 1"] "5s" "3s" "5s" '\x03'}
USER 1000
WORKDIR /home/jovyan
LABEL maintainer=Jupyter Project <jupyter@googlegroups.com>
SHELL [/bin/bash -o pipefail -c]
USER root
RUN /bin/bash -o pipefail -c apt-get update --yes && apt-get install --yes --no-install-recommends curl git nano-tiny tzdata unzip vim-tiny openssh-client less texlive-xetex texlive-fonts-recommended texlive-plain-generic xclip && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/bash -o pipefail -c update-alternatives --install /usr/bin/nano nano /bin/nano-tiny 10 # buildkit
USER 1000
COPY Rprofile.site /opt/conda/lib/R/etc/ # buildkit
COPY setup-scripts/ /opt/setup-scripts/ # buildkit
LABEL maintainer=Jupyter Project <jupyter@googlegroups.com>
SHELL [/bin/bash -o pipefail -c]
USER root
RUN /bin/bash -o pipefail -c apt-get update --yes && apt-get install --yes --no-install-recommends build-essential cm-super dvipng ffmpeg && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
USER 1000
RUN /bin/bash -o pipefail -c echo 'jupyterlab >=4.0.4' >> "${CONDA_DIR}/conda-meta/pinned" && echo 'notebook >=7.0.2' >> "${CONDA_DIR}/conda-meta/pinned" # buildkit
RUN /bin/bash -o pipefail -c mamba install --yes 'altair' 'beautifulsoup4' 'bokeh' 'bottleneck' 'cloudpickle' 'conda-forge::blas=*=openblas' 'cython' 'dask' 'dill' 'h5py' 'ipympl' 'ipywidgets' 'jupyterlab-git' 'matplotlib-base' 'numba' 'numexpr' 'openpyxl' 'pandas' 'patsy' 'protobuf' 'pytables' 'scikit-image' 'scikit-learn' 'scipy' 'seaborn' 'sqlalchemy' 'statsmodels' 'sympy' 'widgetsnbextension' 'xlrd' && mamba clean --all -f -y && fix-permissions "${CONDA_DIR}" && fix-permissions "/home/${NB_USER}" # buildkit
WORKDIR /tmp
RUN /bin/bash -o pipefail -c git clone https://github.com/PAIR-code/facets.git && jupyter nbclassic-extension install facets/facets-dist/ --sys-prefix && rm -rf /tmp/facets && fix-permissions "${CONDA_DIR}" && fix-permissions "/home/${NB_USER}" # buildkit
ENV XDG_CACHE_HOME=/home/jovyan/.cache/
RUN /bin/bash -o pipefail -c MPLBACKEND=Agg python -c "import matplotlib.pyplot" && fix-permissions "/home/${NB_USER}" # buildkit
USER 1000
WORKDIR /home/jovyan
LABEL maintainer=Jupyter Project <jupyter@googlegroups.com>
SHELL [/bin/bash -o pipefail -c]
USER root
ARG spark_version=3.4.1
ARG hadoop_version=3
ARG scala_version
ARG spark_checksum=5a21295b4c3d1d3f8fc85375c711c7c23e3eeb3ec9ea91778f149d8d321e3905e2f44cf19c69a28df693cffd536f7316706c78932e7e148d224424150f18b2c5
ARG openjdk_version=17
ENV APACHE_SPARK_VERSION=3.4.1 HADOOP_VERSION=3
RUN |5 spark_version=3.4.1 hadoop_version=3 scala_version= spark_checksum=5a21295b4c3d1d3f8fc85375c711c7c23e3eeb3ec9ea91778f149d8d321e3905e2f44cf19c69a28df693cffd536f7316706c78932e7e148d224424150f18b2c5 openjdk_version=17 /bin/bash -o pipefail -c apt-get update --yes && apt-get install --yes --no-install-recommends "openjdk-${openjdk_version}-jre-headless" ca-certificates-java && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
WORKDIR /tmp
RUN |5 spark_version=3.4.1 hadoop_version=3 scala_version= spark_checksum=5a21295b4c3d1d3f8fc85375c711c7c23e3eeb3ec9ea91778f149d8d321e3905e2f44cf19c69a28df693cffd536f7316706c78932e7e148d224424150f18b2c5 openjdk_version=17 /bin/bash -o pipefail -c if [ -z "${scala_version}" ]; then curl --progress-bar --location --output "spark.tgz" "https://dlcdn.apache.org/spark/spark-${APACHE_SPARK_VERSION}/spark-${APACHE_SPARK_VERSION}-bin-hadoop${HADOOP_VERSION}.tgz"; else curl --progress-bar --location --output "spark.tgz" "https://dlcdn.apache.org/spark/spark-${APACHE_SPARK_VERSION}/spark-${APACHE_SPARK_VERSION}-bin-hadoop${HADOOP_VERSION}-scala${scala_version}.tgz"; fi && echo "${spark_checksum} *spark.tgz" | sha512sum -c - && tar xzf "spark.tgz" -C /usr/local --owner root --group root --no-same-owner && rm "spark.tgz" # buildkit
ENV SPARK_HOME=/usr/local/spark
ENV SPARK_OPTS=--driver-java-options=-Xms1024M --driver-java-options=-Xmx4096M --driver-java-options=-Dlog4j.logLevel=info PATH=/opt/conda/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/spark/bin
RUN |5 spark_version=3.4.1 hadoop_version=3 scala_version= spark_checksum=5a21295b4c3d1d3f8fc85375c711c7c23e3eeb3ec9ea91778f149d8d321e3905e2f44cf19c69a28df693cffd536f7316706c78932e7e148d224424150f18b2c5 openjdk_version=17 /bin/bash -o pipefail -c if [ -z "${scala_version}" ]; then ln -s "spark-${APACHE_SPARK_VERSION}-bin-hadoop${HADOOP_VERSION}" "${SPARK_HOME}"; else ln -s "spark-${APACHE_SPARK_VERSION}-bin-hadoop${HADOOP_VERSION}-scala${scala_version}" "${SPARK_HOME}"; fi && ln -s "${SPARK_HOME}/sbin/spark-config.sh" /usr/local/bin/before-notebook.d/spark-config.sh # buildkit
COPY ipython_kernel_config.py /etc/ipython/ # buildkit
RUN |5 spark_version=3.4.1 hadoop_version=3 scala_version= spark_checksum=5a21295b4c3d1d3f8fc85375c711c7c23e3eeb3ec9ea91778f149d8d321e3905e2f44cf19c69a28df693cffd536f7316706c78932e7e148d224424150f18b2c5 openjdk_version=17 /bin/bash -o pipefail -c fix-permissions "/etc/ipython/" # buildkit
USER 1000
RUN |5 spark_version=3.4.1 hadoop_version=3 scala_version= spark_checksum=5a21295b4c3d1d3f8fc85375c711c7c23e3eeb3ec9ea91778f149d8d321e3905e2f44cf19c69a28df693cffd536f7316706c78932e7e148d224424150f18b2c5 openjdk_version=17 /bin/bash -o pipefail -c mamba install --yes 'pandas>=1.5.3,<2.0.0' 'pyarrow' && mamba clean --all -f -y && fix-permissions "${CONDA_DIR}" && fix-permissions "/home/${NB_USER}" # buildkit
WORKDIR /home/jovyan
EXPOSE map[4040/tcp:{}]

Labels

Key Value
maintainer Jupyter Project <jupyter@googlegroups.com>
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.version 22.04
Details
Container
2024-03-01 16:36:33 +01:00
0
OCI / Docker
linux/amd64
5.7 GiB
Versions (1) View all
latest 2024-03-01