diff --git a/dockerfile.txt b/dockerfile.txt index 4ef6120..ce012e4 100644 --- a/dockerfile.txt +++ b/dockerfile.txt @@ -1,60 +1,42 @@ -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 +FROM nvcr.io/nvidia/pytorch:26.01-py3 +ENV DEBIAN_FRONTEND=noninteractive + +# 1. Système + SSH (La survie) +RUN apt-get update && apt-get install -y \ + openssh-server ffmpeg libsndfile1 sox git curl \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +# Config SSH pour root (nécessaire pour Vast.ai) +RUN mkdir /var/run/sshd && \ + echo 'root:root' | chpasswd && \ + sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config + +# 2. Python & Dépendances +RUN pip install --no-cache-dir \ + open-webui gradio scipy soundfile julius omegaconf hydra-core \ + flashy torchmetrics encodec xformers einops spacy==3.7.6 numpy==1.26.4 + +RUN pip install --no-cache-dir --no-deps git+https://github.com/facebookresearch/audiocraft.git + +# 3. Ollama & Comfy +RUN curl -fsSL https://ollama.ai/install.sh | sh +WORKDIR /root +RUN git clone https://github.com/comfyanonymous/ComfyUI.git && \ + cd ComfyUI && pip install --no-cache-dir -r requirements.txt + +# 4. Copie du code +RUN mkdir -p /root/audiocraft-api +COPY server.py /root/audiocraft-api/server.py + +# 5. Nouveau script de démarrage Robuste +RUN echo '#!/bin/bash\n\ +service ssh start\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 "Studio Ready" \n\ +sleep infinity' > /start.sh && chmod +x /start.sh + +EXPOSE 22 3000 7860 8188 11434 ENTRYPOINT ["/bin/bash", "/start.sh"] \ No newline at end of file