FROM python:3.12-slim

ENV DDNS_DATABASE=/data/ddns.sqlite3

WORKDIR /app
COPY pyproject.toml README.md /app/
COPY router_dyndns /app/router_dyndns
RUN pip install --no-cache-dir .
RUN adduser --system --group --home /app karldns \
    && mkdir -p /data \
    && chown -R karldns:karldns /app /data
USER karldns

EXPOSE 8080
CMD ["karldns", "serve", "--host", "0.0.0.0", "--port", "8080"]
