Dockerfile 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. # Base CUDA image
  2. FROM cnstark/pytorch:2.0.1-py3.9.17-cuda11.8.0-ubuntu20.04
  3. LABEL maintainer="breakstring@hotmail.com"
  4. LABEL version="dev-20240209"
  5. LABEL description="Docker image for GPT-SoVITS"
  6. # Install 3rd party apps
  7. ENV DEBIAN_FRONTEND=noninteractive
  8. ENV TZ=Etc/UTC
  9. RUN apt-get update && \
  10. apt-get install -y --no-install-recommends tzdata ffmpeg libsox-dev parallel aria2 git git-lfs && \
  11. git lfs install && \
  12. rm -rf /var/lib/apt/lists/*
  13. # Copy only requirements.txt initially to leverage Docker cache
  14. WORKDIR /workspace
  15. COPY requirements.txt /workspace/
  16. RUN pip install --no-cache-dir -r requirements.txt
  17. # Define a build-time argument for image type
  18. ARG IMAGE_TYPE=full
  19. # Conditional logic based on the IMAGE_TYPE argument
  20. # Always copy the Docker directory, but only use it if IMAGE_TYPE is not "elite"
  21. COPY ./Docker /workspace/Docker
  22. # elite 类型的镜像里面不包含额外的模型
  23. RUN if [ "$IMAGE_TYPE" != "elite" ]; then \
  24. chmod +x /workspace/Docker/download.sh && \
  25. /workspace/Docker/download.sh && \
  26. python /workspace/Docker/download.py && \
  27. python -m nltk.downloader averaged_perceptron_tagger cmudict; \
  28. fi
  29. # Copy the rest of the application
  30. COPY . /workspace
  31. EXPOSE 9871 9872 9873 9874 9880
  32. CMD ["python", "webui.py"]