Files
trailofbits-buttercup/orchestrator/Dockerfile
T
Riccardo Schirone dee20dd7b6 Introduce Buttercup namespace for CRS components (#5)
* orchestrator: create pkg under 'buttercup' namespace

* fix compose file
2025-01-17 08:59:16 +01:00

32 lines
803 B
Docker

ARG PYTHON_BASE=3.12-slim-bookworm
FROM python:${PYTHON_BASE} AS builder
COPY --from=ghcr.io/astral-sh/uv:0.5.20 /uv /uvx /bin/
ENV UV_LINK_MODE=copy \
UV_COMPILE_BYTECODE=1 \
UV_PYTHON_DOWNLOADS=never \
UV_PYTHON=python3.12
WORKDIR /app
RUN --mount=type=cache,target=/root/.cache/uv \
--mount=type=bind,source=uv.lock,target=uv.lock \
--mount=type=bind,source=pyproject.toml,target=pyproject.toml \
uv sync --frozen --no-install-project --no-editable
ADD . /app
RUN --mount=type=cache,target=/root/.cache/uv \
uv sync --frozen --no-editable
FROM python:${PYTHON_BASE} AS runtime
COPY --from=builder --chown=app:app /app/.venv /app/.venv
WORKDIR /app
CMD ["/app/.venv/bin/uvicorn", "buttercup.orchestrator.task_server.server:app", "--host", "0.0.0.0"]
EXPOSE 8000