# backend/Dockerfile FROM python:3.10.1-slim WORKDIR /app RUN apt-get update RUN apt-get install git \ 'ffmpeg'\ 'libsm6'\ 'libxext6' -y COPY requirements.txt . RUN pip install -r requirements.txt # Clone Real-ESRGAN and enter the Real-ESRGAN # RUN git clone https://github.com/xinntao/Real-ESRGAN.git # RUN cd Real-ESRGAN # # Set up the environment # RUN pip install basicsr # RUN pip install facexlib # RUN pip install gfpgan # RUN pip install -r requirements.txt # RUN python setup.py develop # Set up a new user named "user" with user ID 1000 RUN useradd -m -u 1000 user # Switch to the "user" user USER user # Set home to the user's home directory ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH # Set the working directory to the user's home directory WORKDIR $HOME/app # Copy the current directory contents into the container at $HOME/app setting the owner to the user COPY --chown=user . $HOME/app # EXPOSE 8000 # RUN python download_models.py # CMD ["python", "app.py"] # Start app # ENTRYPOINT ["gunicorn", "-c", "gunicorn.py", "-k", "uvicorn.workers.UvicornWorker", "app:app"] # RUN python download_models.py # CMD ["python", "app.py"] CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]