# Use the official ROCm base image
FROM ubuntu:26.04

# Set environment variables for 7900 XTX (gfx1100)
ENV PIP_BREAK_SYSTEM_PACKAGES=1
ENV PYTHONUNBUFFERED=1

RUN apt update -y && apt install -y --no-install-recommends \
    rocm \
    python3-pip \
    python3-dev \
    python3-torch-rocm \
    python3-torchaudio \
    git \
    libgl1 \
    libglib2.0-bin \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app

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

# Create sub dependancy
RUN grep -vE 'torch|torchsde|torchaudio|torchvision' requirements.txt > req_no_torch.txt

# Install non torch dependant requirements
RUN pip3 install --no-cache-dir --break-system-packages -r req_no_torch.txt

# Install ComfyUI dependencies
RUN pip3 install --no-deps --break-system-packages torchsde

# Setup Manager
WORKDIR /app/custom_nodes
RUN git clone https://github.com/Comfy-Org/ComfyUI-Manager.git

WORKDIR /app
EXPOSE 8188

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