FROM nvcr.io/nvidia/pytorch:22.04-py3
#FROM pytorch/pytorch:1.12.0-cuda11.3-cudnn8-runtime

RUN apt update
RUN apt install -y zsh

RUN apt --fix-missing update
RUN DEBIAN_FRONTEND="noninteractive" TZ="US/Pacific" apt install -y ffmpeg libsm6 libxext6 

RUN pip install basicsr
RUN pip install facexlib
RUN pip install gfpgan
RUN pip install basicsr>=1.4.2
RUN pip install facexlib>=0.2.5
RUN pip install gfpgan>=1.3.5
RUN pip install numpy
RUN pip install opencv-python
RUN pip install Pillow
RUN pip install torch>=1.7
RUN pip install torchvision
RUN pip install tqdm
RUN pip install opencv-python==4.5.5.64

ADD . /usr/local/src/Real-ESRGAN
ADD ./setup-orig.py /usr/local/src/Real-ESRGAN/setup.py
RUN (cd /usr/local/src/Real-ESRGAN; pip install --src /usr/local/src -e .;)

# gfpgan insist on downloading into its package directory (just symlink it)
RUN rm -rf /opt/conda/lib/python3.8/site-packages/gfpgan/weights
RUN ln -s /mldata/real-esrgan /opt/conda/lib/python3.8/site-packages/gfpgan/weights

RUN pip install setproctitle

RUN useradd -s /bin/bash -u 20000 reimage

