Files
coredns-netbox/Dockerfile
Gemini Bot e656dc6f16
All checks were successful
Docker Build & Push / build-and-push (push) Successful in 19s
feat: Add healthcheck, graceful shutdown, and SSL verify option
2025-12-09 19:19:30 +00:00

26 lines
696 B
Docker

FROM python:3.11-alpine
# Defaults für nicht-sensitive Konfiguration
ENV REFRESH_INTERVAL=600 \
ZONE_NAME="example.com" \
REVERSE_ZONE_NAME="1.168.192.in-addr.arpa" \
OUTPUT_FILE_FWD="/zones/db.fwd" \
OUTPUT_FILE_REV="/zones/db.rev" \
DEFAULT_TTL=3600 \
FALLBACK_NS_HOSTNAME="ns1" \
FALLBACK_NS_IP="127.0.0.1"
# Hinweis: NETBOX_URL und NETBOX_TOKEN müssen zur Laufzeit übergeben werden!
RUN pip install requests
COPY sync.py /sync.py
# Logs ungepuffert ausgeben
ENV PYTHONUNBUFFERED=1
CMD ["python", "/sync.py"]
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD [ $(date +%s) -lt $(($(stat -c %Y /tmp/healthy) + 60)) ] || exit 1