FROM python:3.12-slim-bookworm

RUN apt-get update -qq \
    && apt-get install -y --no-install-recommends \
        docker.io \
        curl \
        ca-certificates \
    && mkdir -p /usr/local/lib/docker/cli-plugins \
    && curl -fsSL "https://github.com/docker/compose/releases/download/v2.32.4/docker-compose-linux-$(uname -m)" \
        -o /usr/local/lib/docker/cli-plugins/docker-compose \
    && chmod +x /usr/local/lib/docker/cli-plugins/docker-compose \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app

COPY server-ui/requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY control-plane/env_loader.py ./env_loader.py
COPY server-ui/app.py server-ui/compose_runner.py server-ui/gpu_info.py server-ui/gpu_fan_proxy.py server-ui/file_explorer.py server-ui/stacks.yaml ./
COPY server-ui/static ./static

ENV SERVER_UI_HOST=0.0.0.0
ENV SERVER_UI_PORT=8091
ENV REPO_ROOT=/repo

EXPOSE 8091

CMD ["python", "app.py"]
