FROM nvcr.io/nvidia/pytorch:26.01-py3 ENV DEBIAN_FRONTEND=noninteractive # 1. Dépendances système et audio RUN apt-get update && apt-get install -y \ ffmpeg pkg-config libavcodec-dev libavformat-dev \ libavutil-dev libswscale-dev libavdevice-dev libavfilter-dev \ libsndfile1 sox zstd screen nano git wget curl \ && apt-get clean && rm -rf /var/lib/apt/lists/* # 2. Installation d'Ollama RUN curl -fsSL https://ollama.ai/install.sh | sh # 3. Installation des dépendances Python (Validées par nos tests manuels) # On installe les briques manquantes AVANT Audiocraft RUN pip install --no-cache-dir \ open-webui \ gradio \ scipy \ soundfile \ julius \ omegaconf \ hydra-core \ hydra-colorlog \ flashy \ num2words \ torchmetrics \ encodec \ xformers \ einops \ spacy==3.7.6 \ numpy==1.26.4 # 4. Installation d'Audiocraft (Isolée pour ne pas casser PyTorch) RUN pip install --no-cache-dir --no-deps git+https://github.com/facebookresearch/audiocraft.git # 5. Installation ComfyUI WORKDIR /root RUN git clone https://github.com/comfyanonymous/ComfyUI.git && \ cd ComfyUI && \ pip install --no-cache-dir -r requirements.txt # 6. Intégration de ton script de serveur Audio RUN mkdir -p /root/audiocraft-api COPY server.py /root/audiocraft-api/server.py # 7. Script d'auto-lancement (Auto-Boot) ultra-robuste RUN echo '#!/bin/bash\n\ ollama serve > /root/ollama.log 2>&1 & \n\ open-webui serve --port 3000 > /root/webui.log 2>&1 & \n\ python3 /root/ComfyUI/main.py --listen 0.0.0.0 --port 8188 > /root/comfy.log 2>&1 & \n\ python3 /root/audiocraft-api/server.py > /root/audio.log 2>&1 & \n\ echo "--- TOUS LES SERVICES SONT EN COURS DE LANCEMENT ---"\n\ wait' > /start.sh && chmod +x /start.sh # 8. Configuration finale EXPOSE 3000 7860 8188 11434 WORKDIR /root # On force l'utilisation de bash pour éviter les problèmes de droits ENTRYPOINT ["/bin/bash", "/start.sh"]