27 lines
548 B
Docker
27 lines
548 B
Docker
|
ARG PYTHON_VERSION=3.12.8
|
||
|
FROM python:${PYTHON_VERSION}-slim AS base
|
||
|
|
||
|
ENV PYTHONDONTWRITEBYTECODE=1
|
||
|
ENV PYTHONUNBUFFERED=1
|
||
|
|
||
|
WORKDIR /app
|
||
|
|
||
|
ARG UID=10001
|
||
|
RUN adduser \
|
||
|
--disabled-password \
|
||
|
--gecos "" \
|
||
|
--home "/nonexistent" \
|
||
|
--shell "/sbin/nologin" \
|
||
|
--no-create-home \
|
||
|
--uid "${UID}" \
|
||
|
appuser
|
||
|
|
||
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||
|
--mount=type=bind,source=requirements.txt,target=requirements.txt \
|
||
|
python -m pip install -r requirements.txt
|
||
|
|
||
|
USER appuser
|
||
|
|
||
|
COPY . .
|
||
|
|
||
|
ENTRYPOINT ["python", "main.py"]
|