Skip to content

Demo DDNS Install

This page describes a production-friendly install baseline for Demo DDNS.

Prerequisites

  • Cloudflare account with a managed zone.
  • API token scoped for DNS record edit on the target zone.
  • Zone ID and record name to update.
  • Docker host or Python runtime for local testing.

Environment variable pattern

Use explicit, upper-case environment variables. A typical pattern:

DDNS_PROVIDER=cloudflare
DDNS_ZONE_ID=<zone-id>
DDNS_RECORD_NAME=home.example.com
DDNS_RECORD_TYPE=A
DDNS_TTL=120
DDNS_PROXIED=false
CF_API_TOKEN=<cloudflare-token>
DDNS_CHECK_INTERVAL=300
LOG_LEVEL=info

Guidelines:

  • Keep secrets in deployment environment settings, not in Markdown or Git.
  • Start with a non-proxied record until routing behavior is verified.
  • Use a short interval only if your provider limits allow it.

Docker deployment notes

Example container run pattern:

docker run -d \
  --name demo-ddns \
  --restart unless-stopped \
  --env-file .env \
  ghcr.io/example/demo-ddns:latest

Operational notes:

  • Use --restart unless-stopped for resiliency.
  • Prefer immutable tags in production once validated.
  • Ship logs to your standard aggregation pipeline when available.

Python local run (optional)

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
mkdocs serve

Use this for docs preview or integration notes validation.