# cloak service — FastAPI wrapper around CloakBrowser
#
# Base image already has stealth Chromium, Xvfb, system fonts, Node 20.
# We just add the FastAPI app + uvicorn on top.

FROM cloakhq/cloakbrowser:latest

WORKDIR /app

COPY pyproject.toml ./
COPY src/ ./src/
RUN pip install --no-cache-dir \
    "fastapi>=0.115.0" \
    "uvicorn[standard]>=0.32.0" \
    "pydantic>=2.0" \
    "pydantic-settings>=2.0" \
    && pip install --no-cache-dir -e .

EXPOSE 8770

# Base image already runs Xvfb via /entrypoint.sh — we override the CMD only.
CMD ["python", "-m", "cloak.server"]
