Object_Remover / Dockerfile
Man-isH-07
v2.1
3b2789c
# Base image with Python
FROM python:3.10
# Install git and curl (for internet connectivity test)
RUN apt-get update && apt-get install -y git curl
WORKDIR /home/user/app
# Copy all files to the container
COPY . .
# Test internet connectivity
RUN echo "Testing internet connectivity..." && \
curl -Is http://www.github.com | head -n 1 || \
(echo "Internet connectivity test failed. Check network settings." && exit 1)
# Clone custom node repositories with retries and debug output
RUN echo "Cloning ComfyUI-YoloWorld-EfficientSAM..." && \
for i in 1 2 3; do \
git clone https://github.com/Fannovel16/ComfyUI-YoloWorld-EfficientSAM.git custom_nodes/ComfyUI-YoloWorld-EfficientSAM && break || \
(echo "Attempt $i failed. Retrying..." && sleep 5); \
done || \
(echo "Failed to clone ComfyUI-YoloWorld-EfficientSAM after 3 attempts" && exit 1)
RUN echo "Cloning comfyui-inpaint-nodes..." && \
for i in 1 2 3; do \
git clone https://github.com/Acly/comfyui-inpaint-nodes.git custom_nodes/comfyui-inpaint-nodes && break || \
(echo "Attempt $i failed. Retrying..." && sleep 5); \
done || \
(echo "Failed to clone comfyui-inpaint-nodes after 3 attempts" && exit 1)
RUN echo "Cloning rgthree-comfy..." && \
for i in 1 2 3; do \
git clone https://github.com/rgthree/rgthree-comfy.git custom_nodes/rgthree-comfy && break || \
(echo "Attempt $i failed. Retrying..." && sleep 5); \
done || \
(echo "Failed to clone rgthree-comfy after 3 attempts" && exit 1)
# List contents of custom_nodes/ for debugging
RUN echo "Contents of custom_nodes/:" && \
ls -la custom_nodes/ && \
echo "Contents of ComfyUI-YoloWorld-EfficientSAM:" && \
ls -la custom_nodes/ComfyUI-YoloWorld-EfficientSAM || echo "ComfyUI-YoloWorld-EfficientSAM not found" && \
echo "Contents of comfyui-inpaint-nodes:" && \
ls -la custom_nodes/comfyui-inpaint-nodes || echo "comfyui-inpaint-nodes not found" && \
echo "Contents of rgthree-comfy:" && \
ls -la custom_nodes/rgthree-comfy || echo "rgthree-comfy not found"
# Install dependencies for custom nodes (if they have requirements.txt)
RUN if [ -f "custom_nodes/ComfyUI-YoloWorld-EfficientSAM/requirements.txt" ]; then \
echo "Installing dependencies for ComfyUI-YoloWorld-EfficientSAM..." && \
pip install -r custom_nodes/ComfyUI-YoloWorld-EfficientSAM/requirements.txt || \
echo "Failed to install dependencies for ComfyUI-YoloWorld-EfficientSAM"; \
else \
echo "No requirements.txt found for ComfyUI-YoloWorld-EfficientSAM"; \
fi
RUN if [ -f "custom_nodes/comfyui-inpaint-nodes/requirements.txt" ]; then \
echo "Installing dependencies for comfyui-inpaint-nodes..." && \
pip install -r custom_nodes/comfyui-inpaint-nodes/requirements.txt || \
echo "Failed to install dependencies for comfyui-inpaint-nodes"; \
else \
echo "No requirements.txt found for comfyui-inpaint-nodes"; \
fi
RUN if [ -f "custom_nodes/rgthree-comfy/requirements.txt" ]; then \
echo "Installing dependencies for rgthree-comfy..." && \
pip install -r custom_nodes/rgthree-comfy/requirements.txt || \
echo "Failed to install dependencies for rgthree-comfy"; \
else \
echo "No requirements.txt found for rgthree-comfy"; \
fi
# Install additional dependencies for ComfyUI-YoloWorld-EfficientSAM
RUN pip install efficient-sam
# Install dependencies
RUN pip install --no-cache-dir --upgrade pip
RUN pip install "inference[transformers,sam,clip,gaze,grounding-dino,yolo-world]" xformers torchvision torchaudio supervision onnxruntime onnxruntime-gpu --extra-index-url https://download.pytorch.org/whl/cu124
RUN pip install -r requirements.txt
RUN pip install aiohttp==3.10.11
# Expose the port Gradio runs on
EXPOSE 7860
# Command to run the app
CMD ["python", "app.py"]