You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

40 lines
1.5 KiB

# Model prep phase, also cuts down on build context wait time since these models files
# are large and prone to take long to copy...
FROM disco-diffusion-prep:5.1 AS modelprep
FROM nvcr.io/nvidia/pytorch:21.08-py3
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# Install a few dependencies
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install -y tzdata imagemagick
# Create a disco user
RUN useradd -ms /bin/bash disco
USER disco
# Set up code directory
RUN mkdir code
WORKDIR /workspace/code
# Copy over models used
COPY --from=modelprep /scratch/models /workspace/code/models
COPY --from=modelprep /scratch/pretrained /workspace/code/pretrained
# Clone Git repositories
RUN git clone https://github.com/alembics/disco-diffusion.git && \
git clone https://github.com/openai/CLIP && \
git clone https://github.com/assafshocher/ResizeRight.git && \
git clone https://github.com/MSFTserver/pytorch3d-lite.git && \
git clone https://github.com/isl-org/MiDaS.git && \
git clone https://github.com/crowsonkb/guided-diffusion.git && \
git clone https://github.com/shariqfarooq123/AdaBins.git
# Install Python packages
RUN pip install imageio imageio-ffmpeg==0.4.4 pyspng==0.1.0 lpips datetime timm ipywidgets omegaconf>=2.0.0 pytorch-lightning>=1.0.8 torch-fidelity einops wandb pandas ftfy
# Precache other big files
COPY --chown=disco --from=modelprep /scratch/clip /home/disco/.cache/clip
COPY --chown=disco --from=modelprep /scratch/model-lpips/vgg16-397923af.pth /home/disco/.cache/torch/hub/checkpoints/vgg16-397923af.pth