23 lines
905 B
Docker
23 lines
905 B
Docker
FROM python:3.12.11-slim-bookworm AS builder
|
|
ENV PIP_DISABLE_PIP_VERSION_CHECK=1 PIP_NO_CACHE_DIR=1
|
|
WORKDIR /build
|
|
COPY pyproject.toml .
|
|
COPY app ./app
|
|
RUN python -m venv /venv && /venv/bin/pip install --upgrade pip && /venv/bin/pip install .
|
|
|
|
FROM python:3.12.11-slim-bookworm
|
|
ENV PATH=/venv/bin:$PATH PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1
|
|
RUN groupadd --gid 10001 safety && useradd --uid 10001 --gid safety --no-create-home safety
|
|
COPY --from=builder /venv /venv
|
|
WORKDIR /app
|
|
COPY --chown=10001:10001 app ./app
|
|
COPY --chown=10001:10001 alembic ./alembic
|
|
COPY --chown=10001:10001 alembic.ini openapi.yaml ./
|
|
COPY --chmod=0555 entrypoint.sh /usr/local/bin/message-safety-entrypoint
|
|
RUN sed -i 's/\r$//' /usr/local/bin/message-safety-entrypoint \
|
|
&& /bin/sh -n /usr/local/bin/message-safety-entrypoint
|
|
USER 10001:10001
|
|
EXPOSE 8080
|
|
ENTRYPOINT ["message-safety-entrypoint"]
|
|
CMD ["message-safety"]
|