diff --git a/docker/Dockerfile.nvidia b/docker/Dockerfile.nvidia new file mode 100644 index 0000000..407d221 --- /dev/null +++ b/docker/Dockerfile.nvidia @@ -0,0 +1,20 @@ +FROM nvidia/cuda:11.8.0-cudnn8-runtime-ubuntu22.04 + +# Always use UTC on a server +RUN ln -snf /usr/share/zoneinfo/UTC /etc/localtime && echo UTC > /etc/timezone + +RUN DEBIAN_FRONTEND=noninteractive apt update && apt install -y python3 python3-pip python3-tk git ffmpeg nvidia-cuda-toolkit nvidia-container-runtime libnvidia-decode-525-server wget unzip +RUN wget https://github.com/deepinsight/insightface/releases/download/v0.7/buffalo_l.zip -O /tmp/buffalo_l.zip && \ + mkdir -p /root/.insightface/models/buffalo_l && \ + cd /root/.insightface/models/buffalo_l && \ + unzip /tmp/buffalo_l.zip && \ + rm -f /tmp/buffalo_l.zip + +RUN pip install nvidia-tensorrt +RUN git clone https://github.com/xaviviro/refacer && cd refacer && pip install -r requirements-GPU.txt + +WORKDIR /refacer + +# Test following commands in container to make sure GPU stuff works +# nvidia-smi +# python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))" diff --git a/docker/run.sh b/docker/run.sh new file mode 100755 index 0000000..e18f6cf --- /dev/null +++ b/docker/run.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# Run this script from within the refacer/docker folder. + +docker build -t refacer -f Dockerfile.nvidia . && \ + docker run --rm -v $(pwd)/out:/refacer/out -p 7860:7860 --gpus all refacer python3 app.py --server_name 0.0.0.0 && \ + sleep 1 && google-chrome --new-window "http://127.0.0.1:7860" &