diff --git a/cfddns/.env.example b/cfddns/.env.example new file mode 100644 index 0000000..644875e --- /dev/null +++ b/cfddns/.env.example @@ -0,0 +1,15 @@ +CLOUDFLARE_API_TOKEN=YOUR_CLOUDFLARE_API_TOKEN +DOMAINS=example.com,dns.example.com,mc.example.com,auth.example.com,ssh.example.com +IP4_DOMAINS= +IP6_DOMAINS= +IP4_PROVIDER=cloudflare.trace +IP6_PROVIDER=none # change if you want to update AAAA +UPDATE_CRON=@every 5m +UPDATE_ON_START=true +DELETE_ON_STOP=false +DELETE_ON_FAILURE=true +TTL=1 +PROXIED=!is(dns.example.com) && !is(mc.example.com) && !is(ssh.example.com) +EMOJI=true +UPTIMEKUMA=https://uptime-kuma.example.com/api/push/AsaSDFGFkfklaFALSKffkfFKfkfkfkFK?status=up&msg=OK&ping= +REJECT_CLOUDFLARE_IPS=true \ No newline at end of file diff --git a/cfddns/compose.yaml b/cfddns/compose.yaml index d5d4426..bfdf40d 100644 --- a/cfddns/compose.yaml +++ b/cfddns/compose.yaml @@ -6,8 +6,25 @@ services: security_opt: - no-new-privileges:true network_mode: 'host' + # https://github.com/timothymiller/cloudflare-ddns#-quick-start environment: - - PUID=1000 - - PGID=1000 - volumes: - - ./config.json:/config.json + - CLOUDFLARE_API_TOKEN=${CLOUDFLARE_API_TOKEN:?Cloudflare API token is required} + - DOMAINS=${DOMAINS:-} + - IP4_DOMAINS=${IP4_DOMAINS:-} + - IP6_DOMAINS=${IP6_DOMAINS:-} + - IP4_PROVIDER=${IP4_PROVIDER:-cloudflare.trace} + - IP6_PROVIDER=${IP6_PROVIDER:-none} + - UPDATE_CRON=${UPDATE_CRON:-@every 5m} + - UPDATE_ON_START=${UPDATE_ON_START:-true} + - DELETE_ON_STOP=${DELETE_ON_STOP:-false} + - DELETE_ON_FAILURE=${DELETE_ON_FAILURE:-true} + - TTL=${TTL:-1} # 1=auto + # to proxy only "dns.example.com" and "wfs.example.com" use "!is(dns.domain.com) && !is (wfs.domain.com)" + - PROXIED=${PROXIED:-true} + - EMOJI=${EMOJI:-true} + - UPTIMEKUMA=${UPTIMEKUMA:-} + - HEALTHCHECKS=${HEALTHCHECKS:-} + - REJECT_CLOUDFLARE_IPS=${REJECT_CLOUDFLARE_IPS:-true} + # volumes: + # Prefer using environment variables for configuration, config.json legacy support + # - ./config.json:/config.json