# Get cuda version from https://hub.docker.com/r/nvidia/cuda
FROM nvcr.io/nvidia/pytorch:25.05-py3 AS build-deps

# Install system dependencies
RUN pip install imageio controlnet_aux

# Set working directory
WORKDIR /app

# Clone ComfyUI
RUN git clone https://github.com/comfyanonymous/ComfyUI.git .

# Link in python
RUN ln -sf /usr/bin/python3 /usr/bin/python && \
    ln -sf /usr/bin/pip3 /usr/bin/pip

# Install
RUN grep -vE "^(torch|#)" requirements.txt | xargs pip install && \
    pip install torchsde

# Set custom Nodes
WORKDIR /app/custom_nodes

# Install ComfyUi Manager
RUN git clone https://github.com/Comfy-Org/ComfyUI-Manager.git

# Go back to root
WORKDIR /app

# Expose the default ComfyUI port
EXPOSE 8188

# Launch ComfyUI
CMD ["python3", "main.py", "--listen", "0.0.0.0"]