FROM nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 AS stage1 ARG DEBIAN_FRONTEND=noninteractive ARG TZ=America/Los_Angeles RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone RUN apt-get update RUN apt install -y curl wget git RUN adduser --disabled-password --gecos '' --shell /bin/bash user USER user ENV HOME=/home/user WORKDIR $HOME RUN mkdir $HOME/.cache $HOME/.config && chmod -R 777 $HOME RUN wget https://repo.anaconda.com/miniconda/Miniconda3-py39_23.1.0-1-Linux-x86_64.sh RUN chmod +x Miniconda3-py39_23.1.0-1-Linux-x86_64.sh RUN ./Miniconda3-py39_23.1.0-1-Linux-x86_64.sh -b -p /home/user/miniconda ENV PATH="$HOME/miniconda/bin:$PATH" RUN conda init RUN conda install python=3.9.13 RUN python3 -m pip install --upgrade pip RUN pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118 FROM stage1 AS stage2 USER root RUN mkdir /home/user/ai-voice-cloning RUN mkdir /home/user/ai-voice-cloning/modules RUN chown -R user:user /home/user/ai-voice-cloning USER user WORKDIR /home/user/ai-voice-cloning ADD .gitmodules .gitmodules ADD .git .git ADD modules modules USER root RUN chown -R user:user /home/user/ai-voice-cloning USER user RUN git config --global --add safe.directory /home/user/ai-voice-cloning RUN git submodule init RUN git submodule update --remote # install TorToiSe requirements RUN python3 -m pip install -r ./modules/tortoise-tts/requirements.txt # install TorToiSe RUN python3 -m pip install -e ./modules/tortoise-tts/ # instal DLAS requirements, last, because whisperx will break a dependency here RUN python3 -m pip install -r ./modules/dlas/requirements.txt # install DLAS RUN python3 -m pip install -e ./modules/dlas/ ADD requirements.txt requirements.txt # install local requirements RUN python3 -m pip install -r ./requirements.txt ADD . /home/user/ai-voice-cloning CMD ["python", "./src/main.py", "--listen", "0.0.0.0:7680"]