Files

19 lines
562 B
Docker

FROM python:3.12-slim
WORKDIR /srv/publisher
# Non-root, read-only fs (правило безопасности)
RUN useradd -m -u 10001 appuser && mkdir -p /data && chown appuser:appuser /data
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY app ./app
USER appuser
EXPOSE 8410
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s \
CMD python -c "import urllib.request;urllib.request.urlopen('http://127.0.0.1:8410/healthz',timeout=4)" || exit 1
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8410"]