From 0a0012ec4d0eeac797c222cfa2d8a140e812d75e Mon Sep 17 00:00:00 2001 From: XXXXRT666 <157766680+XXXXRT666@users.noreply.github.com> Date: Sat, 3 May 2025 12:55:49 +0100 Subject: [PATCH] use miniconda --- Docker/anaconda_install.sh | 70 ------------------------------------- Docker/miniconda_install.sh | 70 +++++++++++++++++++++++++++++++++++++ Dockerfile | 2 +- 3 files changed, 71 insertions(+), 71 deletions(-) delete mode 100644 Docker/anaconda_install.sh create mode 100644 Docker/miniconda_install.sh diff --git a/Docker/anaconda_install.sh b/Docker/anaconda_install.sh deleted file mode 100644 index 96a2a172..00000000 --- a/Docker/anaconda_install.sh +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/bash - -set -e - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" - -cd "$SCRIPT_DIR" || exit 1 - -cd .. || exit 1 - -if [ -d "$HOME/anaconda3" ]; then - exit 0 -fi - -WORKFLOW=${WORKFLOW:-"false"} -TARGETPLATFORM=${TARGETPLATFORM:-"linux/amd64"} - -if [ "$WORKFLOW" = "true" ]; then - WGET_CMD="wget -nv --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404" -else - WGET_CMD="wget --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404" -fi - -if [ "$TARGETPLATFORM" = "linux/amd64" ]; then - eval "$WGET_CMD -O anaconda.sh https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh" -elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then - eval "$WGET_CMD -O anaconda.sh https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-aarch64.sh" -else - exit 1 -fi - -LOG_PATH="/tmp/anaconda-install.log" - -bash anaconda.sh -b -p "$HOME/anaconda3" >"$LOG_PATH" 2>&1 - -if [ $? -eq 0 ]; then - echo "== Anaconda Installed ==" -else - echo "Failed to Install Anaconda" - tail -n 50 "$LOG_PATH" - exit 1 -fi - -rm anaconda.sh - -source "$HOME/anaconda3/etc/profile.d/conda.sh" - -"$HOME/anaconda3/bin/conda" config --add channels conda-forge - -"$HOME/anaconda3/bin/conda" update -q --all -y 1>/dev/null - -"$HOME/anaconda3/bin/conda" install python=3.11 -q -y - -"$HOME/anaconda3/bin/conda" install gcc=14 gxx ffmpeg cmake make unzip -q -y - -if [ "$CUDA_VERSION" = "12.8" ]; then - "$HOME/anaconda3/bin/pip" install torch torchaudio --no-cache-dir --index-url https://download.pytorch.org/whl/cu128 -elif [ "$CUDA_VERSION" = "12.4" ]; then - "$HOME/anaconda3/bin/pip" install torch==2.5.1 torchaudio==2.5.1 --no-cache-dir --index-url https://download.pytorch.org/whl/cu124 -fi - -"$HOME/anaconda3/bin/pip" cache purge - -rm $LOG_PATH - -rm -rf "$HOME/anaconda3/pkgs" - -mkdir "$HOME/anaconda3/pkgs" - -rm -rf "$HOME/.conda" "$HOME/.cache" diff --git a/Docker/miniconda_install.sh b/Docker/miniconda_install.sh new file mode 100644 index 00000000..d0fa48d6 --- /dev/null +++ b/Docker/miniconda_install.sh @@ -0,0 +1,70 @@ +#!/bin/bash + +set -e + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" + +cd "$SCRIPT_DIR" || exit 1 + +cd .. || exit 1 + +if [ -d "$HOME/miniconda3" ]; then + exit 0 +fi + +WORKFLOW=${WORKFLOW:-"false"} +TARGETPLATFORM=${TARGETPLATFORM:-"linux/amd64"} + +if [ "$WORKFLOW" = "true" ]; then + WGET_CMD="wget -nv --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404" +else + WGET_CMD="wget --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404" +fi + +if [ "$TARGETPLATFORM" = "linux/amd64" ]; then + eval "$WGET_CMD -O miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py311_25.3.1-1-Linux-x86_64.sh" +elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then + eval "$WGET_CMD -O miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py311_25.3.1-1-Linux-aarch64.sh" +else + exit 1 +fi + +LOG_PATH="/tmp/miniconda-install.log" + +bash miniconda.sh -b -p "$HOME/miniconda3" >"$LOG_PATH" 2>&1 + +if [ $? -eq 0 ]; then + echo "== Miniconda Installed ==" +else + echo "Failed to Install miniconda" + tail -n 50 "$LOG_PATH" + exit 1 +fi + +rm miniconda.sh + +source "$HOME/miniconda3/etc/profile.d/conda.sh" + +"$HOME/miniconda3/bin/conda" config --add channels conda-forge + +"$HOME/miniconda3/bin/conda" update -q --all -y 1>/dev/null + +"$HOME/miniconda3/bin/conda" install python=3.11 -q -y + +"$HOME/miniconda3/bin/conda" install gcc=14 gxx ffmpeg cmake make unzip -q -y + +if [ "$CUDA_VERSION" = "12.8" ]; then + "$HOME/miniconda3/bin/pip" install torch torchaudio --no-cache-dir --index-url https://download.pytorch.org/whl/cu128 +elif [ "$CUDA_VERSION" = "12.4" ]; then + "$HOME/miniconda3/bin/pip" install torch==2.5.1 torchaudio==2.5.1 --no-cache-dir --index-url https://download.pytorch.org/whl/cu124 +fi + +"$HOME/miniconda3/bin/pip" cache purge + +rm $LOG_PATH + +rm -rf "$HOME/miniconda3/pkgs" + +mkdir "$HOME/miniconda3/pkgs" + +rm -rf "$HOME/.conda" "$HOME/.cache" diff --git a/Dockerfile b/Dockerfile index 5818acfc..02d9cabf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,7 +26,7 @@ ENV WORKFLOW=${WORKFLOW} ARG TARGETPLATFORM ENV TARGETPLATFORM=${TARGETPLATFORM} -RUN bash Docker/anaconda_install.sh +RUN bash Docker/miniconda_install.sh COPY extra-req.txt /workspace/GPT-SoVITS/