From 2d05a1911c575efaf8989de29aa2a185f7ec0ca8 Mon Sep 17 00:00:00 2001 From: mr-forust Date: Sun, 30 Nov 2025 03:28:41 +0100 Subject: [PATCH] feat: cloudflare IP sync (ddns) --- .gitignore | 3 ++- cfddns/compose.yaml | 13 +++++++++++++ cfddns/config.json.example | 22 ++++++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 cfddns/compose.yaml create mode 100644 cfddns/config.json.example diff --git a/.gitignore b/.gitignore index 166fda0..ade6b3e 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ portainer/portainer_data/* metube/MeTube_downloads uptime-kuma/data/ termix/termix-data/* +cfddns/config.json # Steaming services files streaming/jellyfin/* @@ -69,4 +70,4 @@ replacements.txt # Misc .DS_Store -.idea \ No newline at end of file +.idea diff --git a/cfddns/compose.yaml b/cfddns/compose.yaml new file mode 100644 index 0000000..8c3a0f3 --- /dev/null +++ b/cfddns/compose.yaml @@ -0,0 +1,13 @@ +services: + cloudflare-ddns: + image: timothyjmiller/cloudflare-ddns:latest + container_name: cloudflare-ddns + security_opt: + - no-new-privileges:true + network_mode: 'host' + environment: + - PUID=1000 + - PGID=1000 + volumes: + - ./config.json:/config.json + restart: unless-stopped diff --git a/cfddns/config.json.example b/cfddns/config.json.example new file mode 100644 index 0000000..d290046 --- /dev/null +++ b/cfddns/config.json.example @@ -0,0 +1,22 @@ +{ + "cloudflare": [ + { + "authentication": { + "api_token": "API_TOKEN" + }, + "api_key": { + "api_key": "api_key_here", + "account_email": "your_email_here" + } + "zone_id": "your_zone-id", + "subdomains": [ + { "name": "", "proxied": true }, + { "name": "www", "proxied": true } + ] + } + ], + "a": true, + "aaaa": false, + "purgeUnknownRecords": false, + "ttl": 300 +}