tritonserver/Dockerfile

58 lines
1.7 KiB
Docker

ARG TRITON_RELEASE
FROM nvcr.io/nvidia/tritonserver:${TRITON_RELEASE}-py3-sdk
ARG MINICONDA3_VERSION=latest
ENV MINICONDA3_VERSION=${MINICONDA3_VERSION}
ARG GO_VERSION=1.24.3
ENV GO_VERSION=${GO_VERSION}
ARG SINGULARITY_VERSION=4.3.1
ENV SINGULARITY_VERSION=${SINGULARITY_VERSION}
RUN echo -e '\n\n\n' >> ~/.bashrc
RUN apt-get update
# RUN apt-get upgrade -y
# Add conda
# RUN mkdir -p ~/.miniconda3 && \
# wget https://repo.anaconda.com/miniconda/Miniconda3-${MINICONDA3_VERSION}-Linux-x86_64.sh -O ~/.miniconda3/miniconda.sh && \
# bash ~/.miniconda3/miniconda.sh -b -u -p ~/.miniconda3 && \
# rm ~/.miniconda3/miniconda.sh
# RUN echo 'source ~/.miniconda3/bin/activate' >> ~/.bashrc
# Add Go
RUN wget https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz && \
rm -rf /usr/local/go && tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz && \
rm go${GO_VERSION}.linux-amd64.tar.gz
RUN echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc
ENV PATH="/usr/local/go/bin:${PATH}"
# Add Singularity
RUN apt-get update && apt-get install -y \
autoconf \
automake \
cryptsetup \
fuse2fs \
git \
fuse \
libfuse-dev \
libseccomp-dev \
libtool \
pkg-config \
runc \
squashfs-tools \
squashfs-tools-ng \
uidmap \
wget \
zlib1g-dev \
libsubid-dev
RUN wget https://github.com/sylabs/singularity/releases/download/v${SINGULARITY_VERSION}/singularity-ce-${SINGULARITY_VERSION}.tar.gz && \
tar -xzf singularity-ce-${SINGULARITY_VERSION}.tar.gz && \
cd singularity-ce-${SINGULARITY_VERSION} && \
./mconfig && \
make -C builddir && \
make -C builddir install && \
cd .. && \
rm -rf singularity-ce-${SINGULARITY_VERSION} singularity-ce-${SINGULARITY_VERSION}.tar.gz