Files
mqtt-ingester/api/Dockerfile
T
2026-08-30 11:30:09 +02:00

22 lines
647 B
Docker

FROM python:3.12-slim
WORKDIR /app
# Build context is the repo root (see docker-compose.yml) so shared/ is
# copyable; shared/ holds the access-control model used by api + webui.
COPY api/requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY shared /app/shared
COPY api /app/api
WORKDIR /app/api
# shared/ is installed at /app/shared; make it importable from /app/api.
ENV PYTHONPATH=/app
RUN useradd --system --no-create-home api
USER api
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8443", "--ssl-keyfile", "/certs/server.key", "--ssl-certfile", "/certs/server.crt", "--ssl-ca-certs", "/certs/ca.crt"]