ARG REGISTRY=quay.io ARG OWNER=jupyter ARG LABEL=notebook ARG VERSION ARG BASE_CONTAINER=$REGISTRY/$OWNER/$LABEL:$VERSION FROM $BASE_CONTAINER ARG HTTP_PROXY ARG HTTPS_PROXY ENV http_proxy=${HTTP_PROXY} ENV https_proxy=${HTTPS_PROXY} ARG DEBIAN_FRONTEND="noninteractive" ENV DEBIAN_FRONTEND=${DEBIAN_FRONTEND} ARG ROOT_PASSWD="root" ENV ROOT_PASSWD=${ROOT_PASSWD} WORKDIR /root SHELL ["/bin/bash", "-c"] # https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ ENV MLNX_OFED_VERSION=23.10-3.2.2.0 ENV STAGE_DIR=/tmp RUN < ${STAGE_DIR}/mlnxofedinstall.log 2>&1 cd ${STAGE_DIR} rm -rf ${STAGE_DIR}/MLNX_OFED_LINUX-${MLNX_OFED_VERSION}-ubuntu22.04-x86_64* EOT ARG NV_PEER_MEM_VERSION="1.2" ENV NV_PEER_MEM_VERSION=${NV_PEER_MEM_VERSION} ENV NV_PEER_MEM_TAG=${NV_PEER_MEM_VERSION}-0 RUN <> /root/.ssh/authorized_keys cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys2 chmod 600 /root/.ssh/authorized_keys chmod 600 /root/.ssh/authorized_keys2 mkdir /var/run/sshd echo "root:${ROOT_PASSWD}" | chpasswd mkdir -p ~/.pip # install miniconda wget -qO- https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O /tmp/miniconda.sh bash /tmp/miniconda.sh -b -p /opt/conda rm /tmp/miniconda.sh ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh echo "source /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc . /opt/conda/etc/profile.d/conda.sh conda init bash conda config --set show_channel_urls true # 配置 .condarc 文件 cat < ~/.condarc channels: - conda-forge - bioconda - pytorch - pytorch-nightly - nvidia - defaults show_channel_urls: true EOF # install pixi curl -fsSL https://pixi.sh/install.sh | bash EOT RUN <=0.17.0 python -m pip install --no-deps git+https://github.com/huggingface/optimum.git#egg=optimum[diffusers,quality] python -m pip install evaluate datasets EOT RUN < ~/.deepspeed_env TORCH_USE_CUDA_DSA=1 DEEPSPEED_VERBOSE=1 DEEPSPEED_LOG_LEVEL=DEBUG CUTLASS_PATH=${CUTLASS_PATH} TORCH_CUDA_ARCH_LIST=${TORCH_CUDA_ARCH_LIST} CUDA_HOME=${CUDA_HOME} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} EOF unset https_proxy http_proxy EOT CMD ["/usr/sbin/sshd", "-D"]