# Dockerfile (VERSÃO FINAL PARA API FASTAPI) # 1. COMEÇAR COM A BASE CORRETA FROM nvidia/cuda:12.1.1-devel-ubuntu22.04 # 2. INSTALAR DEPENDÊNCIAS DO SISTEMA ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install -y --no-install-recommends \ wget \ git \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 3. INSTALAR O MINICONDA RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \ /bin/bash ~/miniconda.sh -b -p /opt/conda && \ rm ~/miniconda.sh # 4. ADICIONAR CONDA AO PATH ENV PATH /opt/conda/bin:$PATH # 5. COPIAR TODOS OS ARQUIVOS DO REPOSITÓRIO COPY . /app WORKDIR /app # 6. ACEITAR OS TERMOS DE SERVIÇO RUN yes | conda tos accept # 7. ATUALIZAR O CONDA RUN conda update -n base -c defaults conda # 8. CRIAR O AMBIENTE CONDA RUN conda env create -f environment.yml && conda clean --all -y # 9. INSTALAR FLASH_ATTN SEM COMPILAR CUDA (PARA EVITAR ERRO DE MEMÓRIA) RUN conda run -n seedvr env FLASH_ATTENTION_SKIP_CUDA_BUILD=TRUE \ pip install "flash_attn==2.5.9.post1" --no-build-isolation --no-cache-dir # 10. BAIXAR O MODELO WORKDIR /app/SeedVR RUN huggingface-cli download ByteDance-Seed/SeedVR2-3B --local-dir ckpts --local-dir-use-symlinks False # 11. DEFINIR O COMANDO FINAL PARA INICIAR A API WORKDIR /app CMD ["conda", "run", "-n", "seedvr", "uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]