Actualiser dockerfile.txt
This commit is contained in:
@ -1,60 +1,42 @@
|
|||||||
FROM nvcr.io/nvidia/pytorch:26.01-py3
|
FROM nvcr.io/nvidia/pytorch:26.01-py3
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
# 1. Dépendances système et audio
|
# 1. Système + SSH (La survie)
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
ffmpeg pkg-config libavcodec-dev libavformat-dev \
|
openssh-server ffmpeg libsndfile1 sox git curl \
|
||||||
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/*
|
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# 2. Installation d'Ollama
|
# Config SSH pour root (nécessaire pour Vast.ai)
|
||||||
RUN curl -fsSL https://ollama.ai/install.sh | sh
|
RUN mkdir /var/run/sshd && \
|
||||||
|
echo 'root:root' | chpasswd && \
|
||||||
|
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
|
||||||
|
|
||||||
# 3. Installation des dépendances Python (Validées par nos tests manuels)
|
# 2. Python & Dépendances
|
||||||
# On installe les briques manquantes AVANT Audiocraft
|
|
||||||
RUN pip install --no-cache-dir \
|
RUN pip install --no-cache-dir \
|
||||||
open-webui \
|
open-webui gradio scipy soundfile julius omegaconf hydra-core \
|
||||||
gradio \
|
flashy torchmetrics encodec xformers einops spacy==3.7.6 numpy==1.26.4
|
||||||
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
|
RUN pip install --no-cache-dir --no-deps git+https://github.com/facebookresearch/audiocraft.git
|
||||||
|
|
||||||
# 5. Installation ComfyUI
|
# 3. Ollama & Comfy
|
||||||
|
RUN curl -fsSL https://ollama.ai/install.sh | sh
|
||||||
WORKDIR /root
|
WORKDIR /root
|
||||||
RUN git clone https://github.com/comfyanonymous/ComfyUI.git && \
|
RUN git clone https://github.com/comfyanonymous/ComfyUI.git && \
|
||||||
cd ComfyUI && \
|
cd ComfyUI && pip install --no-cache-dir -r requirements.txt
|
||||||
pip install --no-cache-dir -r requirements.txt
|
|
||||||
|
|
||||||
# 6. Intégration de ton script de serveur Audio
|
# 4. Copie du code
|
||||||
RUN mkdir -p /root/audiocraft-api
|
RUN mkdir -p /root/audiocraft-api
|
||||||
COPY server.py /root/audiocraft-api/server.py
|
COPY server.py /root/audiocraft-api/server.py
|
||||||
|
|
||||||
# 7. Script d'auto-lancement (Auto-Boot) ultra-robuste
|
# 5. Nouveau script de démarrage Robuste
|
||||||
RUN echo '#!/bin/bash\n\
|
RUN echo '#!/bin/bash\n\
|
||||||
|
service ssh start\n\
|
||||||
ollama serve > /root/ollama.log 2>&1 & \n\
|
ollama serve > /root/ollama.log 2>&1 & \n\
|
||||||
open-webui serve --port 3000 > /root/webui.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/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\
|
python3 /root/audiocraft-api/server.py > /root/audio.log 2>&1 & \n\
|
||||||
echo "--- TOUS LES SERVICES SONT EN COURS DE LANCEMENT ---"\n\
|
echo "Studio Ready" \n\
|
||||||
wait' > /start.sh && chmod +x /start.sh
|
sleep infinity' > /start.sh && chmod +x /start.sh
|
||||||
|
|
||||||
# 8. Configuration finale
|
EXPOSE 22 3000 7860 8188 11434
|
||||||
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"]
|
ENTRYPOINT ["/bin/bash", "/start.sh"]
|
||||||
Reference in New Issue
Block a user