mirror of
https://github.com/data-privacy-stack/presidio.git
synced 2026-09-21 13:38:05 -05:00
Bumps python from `5072b08` to `804ddf3`. --- updated-dependencies: - dependency-name: python dependency-version: 3.12-windowsservercore dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
45 lines
1.5 KiB
Docker
45 lines
1.5 KiB
Docker
FROM python:3.12-slim@sha256:804ddf3251a60bbf9c92e73b7566c40428d54d0e79d3428194edf40da6521286
|
|
|
|
ARG NLP_CONF_FILE=presidio_analyzer/conf/transformers.yaml
|
|
ARG ANALYZER_CONF_FILE=presidio_analyzer/conf/default_analyzer.yaml
|
|
ARG RECOGNIZER_REGISTRY_CONF_FILE=presidio_analyzer/conf/default_recognizers.yaml
|
|
ENV PIP_NO_CACHE_DIR=1
|
|
ENV POETRY_VIRTUALENVS_CREATE=false
|
|
ENV PORT=3000
|
|
ENV WORKERS=1
|
|
|
|
WORKDIR /app
|
|
|
|
ENV ANALYZER_CONF_FILE=${ANALYZER_CONF_FILE}
|
|
ENV RECOGNIZER_REGISTRY_CONF_FILE=${RECOGNIZER_REGISTRY_CONF_FILE}
|
|
ENV NLP_CONF_FILE=${NLP_CONF_FILE}
|
|
|
|
COPY ${ANALYZER_CONF_FILE} /app/${ANALYZER_CONF_FILE}
|
|
COPY ${RECOGNIZER_REGISTRY_CONF_FILE} /app/${RECOGNIZER_REGISTRY_CONF_FILE}
|
|
COPY ${NLP_CONF_FILE} /app/${NLP_CONF_FILE}
|
|
|
|
# Install curl for health checks
|
|
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY ./pyproject.toml /app/
|
|
RUN pip install poetry==2.3.2 && poetry install --no-root --only=main -E server -E transformers
|
|
|
|
# install nlp models specified in NLP_CONF_FILE or via nlp_configuration in ANALYZER_CONF_FILE
|
|
COPY ./install_nlp_models.py /app/
|
|
|
|
RUN poetry run python install_nlp_models.py \
|
|
--conf_file ${NLP_CONF_FILE} \
|
|
--analyzer_conf_file ${ANALYZER_CONF_FILE}
|
|
|
|
COPY . /app/
|
|
|
|
# Create a non-root user and set ownership
|
|
RUN useradd -m -u 1001 presidio && chown -R presidio:presidio /app
|
|
|
|
USER 1001
|
|
|
|
EXPOSE ${PORT}
|
|
HEALTHCHECK --interval=30s --timeout=3s --start-period=30s --retries=3 \
|
|
CMD curl -f http://localhost:${PORT}/health || exit 1
|
|
CMD ["./entrypoint.sh"]
|