Spaces:
Paused
Paused
File size: 5,458 Bytes
fb56537 802ea4a b1a8506 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a 8413983 802ea4a 9b2c1db fb56537 1091009 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 802ea4a fb56537 8413983 802ea4a 691e419 bd316c1 92d6a21 8413983 92d6a21 1a4a6df cec8c3a 8413983 cec8c3a 8413983 cec8c3a 8413983 e67b24b fb56537 802ea4a fb56537 6f75721 496130e 8413983 496130e 3fb8cde 8413983 fc425c7 496130e 8413983 496130e 8413983 496130e 8413983 496130e fb56537 8413983 fb56537 8413983 802ea4a fb56537 1ffefe0 fb56537 802ea4a fb56537 cf55b31 fb56537 802ea4a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 |
# =============================================================================
# DOCKERFILE - ADUC-SDR: AI Video Suite v4.1.0
# Base: CUDA 12.8.0 | PyTorch 2.8.0+cu128
# Otimizado para Hugging Face Spaces com 8x NVIDIA L40S GPUs
# =============================================================================
# Base CUDA 12.8.0
FROM nvidia/cuda:12.8.0-devel-ubuntu22.04
# =============================================================================
# METADADOS
# =============================================================================
LABEL maintainer="Carlos Rodrigues dos Santos & Development Partner"
LABEL description="ADUC-SDR: Production-Ready Multi-GPU AI Video Generation Suite with Wan2.2, SeedVR, LTX, MMAudio"
LABEL version="4.1.0"
LABEL cuda_version="12.8.0"
LABEL python_version="3.10"
LABEL pytorch_version="2.8.0+cu128"
LABEL gpu_optimized_for="8x_NVIDIA_L40S"
# =============================================================================
# VARIÁVEIS DE AMBIENTE GLOBAIS
# =============================================================================
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=UTC
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV PYTHONUNBUFFERED=1
ENV PYTHONDONTWRITEBYTECODE=1
ENV PIP_NO_CACHE_DIR=1
ENV PIP_DISABLE_PIP_VERSION_CHECK=1
# Otimizações de CUDA e Build
ENV NVIDIA_VISIBLE_DEVICES=all
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
ENV TORCH_CUDA_ARCH_LIST="8.9"
ENV MAX_JOBS=90
# Caminhos da Aplicação
ENV APP_HOME=/app
WORKDIR $APP_HOME
# =============================================================================
# PACOTES DO SISTEMA E PYTHON 3.10
# =============================================================================
RUN apt-get update && \
apt-get install -y --no-install-recommends \
build-essential cmake git git-lfs curl wget ffmpeg ninja-build \
python3.10 python3.10-dev python3.10-distutils python3-pip \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
RUN ln -sf /usr/bin/python3.10 /usr/bin/python3 && \
ln -sf /usr/bin/python3.10 /usr/bin/python && \
python3 -m pip install --upgrade pip
# =============================================================================
# INSTALAÇÃO DE BIBLIOTECAS DE ALTA PERFORMANCE
# =============================================================================
# 1. Instala PyTorch 2.8.0 e ferramentas de build
RUN pip -v install \
torch>=2.8.0+cu128 \
torchvision \
torchaudio \
--index-url https://download.pytorch.org/whl/cu128
RUN pip install \
packaging \
ninja \
cmake \
conda \
pybind11 \
scikit-build \
cython \
numpy
# =============================================================================
# INSTALAÇÃO DO RESTANTE DAS DEPENDÊNCIAS
# =============================================================================
COPY requirements.txt .
# Instala os pacotes restantes do requirements.txt
# A linha do flash-attention no arquivo será ignorada se já estiver instalado, mas é bom limpá-la.
RUN pip install -r requirements.txt
# =============================================================================
# CLONAGEM E INSTALAÇÃO DOS REPOSITÓRIOS DA APLICAÇÃO
# =============================================================================
RUN git clone https://github.com/Wan-Video/Wan2.2.git && \
cd Wan2.2 && pip install -v -r requirements.txt && pip install -v -r requirements_s2v.txt && cd .. && \
echo "Copiando 'wan' para /app/wan..." && \
cp -r Wan2.2/wan /app/wan
# VINCIE
RUN git clone https://github.com/bytedance-seed/VINCIE.git && \
cd VINCIE && pip install -v -r requirements.txt && cd .. && \
#echo "Copiando módulos do SeedVR para /app/..." && \
#cp /VINCIE/generate.py /app/VINCIE/ 2>/dev/null || echo "vincie_service.py não encontrado"
#cp -r VINCIE /app/VINCIE && \
#cp -r VINCIE/projects /app/projects && \
#cp -r VINCIE/data /app/data && \
cp -r VINCIE/configs/. /app/configs/
# SeedVR
RUN git clone https://github.com/bytedance-seed/SeedVR.git && \
cd SeedVR && pip install -v -r requirements.txt && cd .. && \
#echo "Copiando módulos do SeedVR para /app/..." && \
#cp -r SeedVR/common /app/common && \
#cp -r SeedVR/projects /app/projects && \
#cp -r SeedVR/data /app/data && \
cp -r SeedVR/configs_3b /app/configs_3b
# MMAudio
RUN git clone https://github.com/hkchengrex/MMAudio.git && \
cd MMAudio && pip install -v -e . && cd .. && \
echo "Copiando 'mmaudio' para /app/mmaudio..." && \
cp -r MMAudio/mmaudio /app/mmaudio
# LTX-Video
RUN git clone https://github.com/Lightricks/LTX-Video.git && \
cd LTX-Video && pip install -v -e .[inference] && cd .. && \
echo "Copiando 'ltx_video' para /app/ltx_video..." && \
cp -r LTX-Video/ltx_video /app/ltx_video
# =============================================================================
# COPIA O CÓDIGO DA APLICAÇÃO E CONFIGURA PERMISSÕES
# =============================================================================
COPY . .
RUN useradd -m -u 1000 -s /bash appuser && \
chown -R appuser:appuser $APP_HOME && \
mkdir -p /app && chown -R appuser:appuser /app
USER appuser
# =============================================================================
# PONTO DE ENTRADA
# =============================================================================
RUN chmod +x ./start.sh
ENTRYPOINT ["./start.sh"]
CMD ["gradio"] |