agent/Dockerfile
2026-04-08 00:43:27 +03:00

52 lines
929 B
Docker

FROM python:3.14-slim as base
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1
WORKDIR /app
RUN apt update && apt install make -y
FROM base as builder
RUN apt install git -y
RUN pip install uv
COPY pyproject.toml uv.lock ./
RUN uv sync --frozen --no-install-project --no-dev
RUN uv pip install git+https://git.lambda.coredump.ru/platform/agent_api.git
FROM base as production
RUN useradd --create-home --shell /bin/bash appuser
COPY --from=builder /app/.venv /app/.venv
ENV PATH="/app/.venv/bin:$PATH"
COPY src/ /app/src/
COPY Makefile ./
COPY .mk/ ./.mk/
USER appuser
EXPOSE 8000
CMD ["make", "uvicorn-prod"]
FROM base as development
RUN pip install uv
COPY pyproject.toml uv.lock ./
RUN uv sync --frozen --no-install-project
COPY --from=agent_api . /agent_api/
RUN uv pip install -e /agent_api/
ENV PATH="/app/.venv/bin:$PATH"
COPY Makefile ./
COPY .mk/ ./.mk/
EXPOSE 8000
CMD ["make", "uvicorn-dev"]