FROM --platform=linux/amd64 python:3.10 | |
WORKDIR /code | |
# Install base utilities | |
RUN apt-get update \ | |
&& apt-get install -y build-essential \ | |
&& apt-get install -y wget libsnappy-dev \ | |
&& apt-get clean \ | |
&& rm -rf /var/lib/apt/lists/* | |
# Install miniconda | |
ENV CONDA_DIR /opt/conda | |
RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \ | |
/bin/bash ~/miniconda.sh -b -p /opt/conda | |
# Put conda in path so we can use conda activate | |
ENV PATH=$CONDA_DIR/bin:$PATH | |
RUN conda install --yes pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia | |
# User setup | |
RUN useradd -m -u 1000 user | |
USER user | |
ENV HOME=/home/user \ | |
PATH=/home/user/.local/bin:$PATH | |
WORKDIR $HOME/app | |
COPY --chown=user . $HOME/app | |
RUN git clone https://github.com/TRI-ML/vlm-evaluation.git | |
RUN cd vlm-evaluation && pip install -e . | |
RUN pip install -e . | |
CMD ["sh", "/app/startup.sh"] |