FROM anchorxia/musev:latest LABEL MAINTAINER="zkangchen" LABEL Email="zkangchen@tencent.com" LABEL Description="MuseTalk Gradio image for Hugging Face Spaces" SHELL ["/bin/bash", "--login", "-c"] # Create a user and switch to it RUN useradd -m -u 1000 user USER user ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH WORKDIR $HOME/app # Clone MuseTalk repo RUN git clone -b main --recursive https://github.com/TMElyralab/MuseTalk.git MuseTalkBase RUN git clone https://huggingface.co/spaces/e-commint/MuseTal MuseTalk # Set working directory to MuseTalk project WORKDIR $HOME/app/MuseTalk # Make all files executable RUN chmod -R 777 . RUN mv $HOME/app/MuseTalkBase/download_weights.sh $HOME/app/MuseTalk/ # Activate conda env and install dependencies RUN . /opt/conda/etc/profile.d/conda.sh && \ echo "source activate musev" >> ~/.bashrc && \ conda activate musev && \ pip install -r requirements.txt && \ pip install --no-cache-dir -U openmim && \ mim install mmengine && \ mim install "mmcv>=2.0.1" && \ mim install "mmdet>=3.1.0" && \ mim install "mmpose>=1.1.0" # Optional: Check ffmpeg availability RUN ffmpeg -codecs || echo "FFmpeg check failed or not installed" RUN chmod +x download_weights.sh && ./download_weights.sh # Expose port for Gradio EXPOSE 7860 CMD ["bash", "-c", "scripts/install_ffmpeg.sh && ./entrypoint.sh"]