Docker container for DuckDNS, works with docker secrets, on ARM and x86
10K+
Update IP on DuckDNS periodically. Works with docker secrets. Tested on amd64, armv7 and arm64.
Uses Alpine Linux for a minimal footprint. Uses a cronjob to run the standard DuckDNS curl script using no external dependencies.
Container packages available from Docker Hub and Github Container Registry (ghcr.io)
anujdatar/duckdnsghcr.io/anujdatar/duckdns| # | Parameter | Default | Notes | Description |
|---|---|---|---|---|
| 1 | FREQUENCY | 5 | OPTIONAL | how often you want to update IP on DuckDNS (default = every 5 minutes) |
| 2 | SUBDOMAINS | - | REQUIRED | your registered DuckDNS subdomains. Multiple comma separated subdomains allowed, no spaces. |
| 3 | TOKEN | - | REQUIRED | DuckDNS token |
| 4 | TZ | UTC | OPTIONAL | timezone so logs can be in local tz, instead of UTC |
docker run -d \
-e SUBDOMAINS=<your-comma-separated-subdomains> \
-e TOKEN=<your-duckdns-token> \
-e TZ=America/New_York \
--restart unless-stopped \
--name duckdns \
ghcr.io/anujdatar/duckdns
version: "3"
services:
duckdns:
image: ghcr.io/anujdatar/duckdns
container_name: duckdns
restart: unless-stopped
environment:
- SUBDOMAINS=<your-comma-separated-subdomains>
- TOKEN=<your-duckdns-token>
- TZ=America/New_York
- FREQUENCY=1 # OPTIONAL, default is 5
In case you plan to commit your docker-compose files to repos and wish to keep tokens/domains secure
version: "3"
services:
testduckdns:
image: ghcr.io/anujdatar/duckdns
container_name: duckdns
restart: unless-stopped
environment:
- SUBDOMAINS_FILE=/run/secrets/duckdns_subdomains
- TOKEN_FILE=/run/secrets/duckdns_token
- TZ=America/New_York
- FREQUENCY=1 # OPTIONAL, default is 5
secrets:
- duckdns_subdomains
- duckdns_token
secrets:
duckdns_subdomains:
file: duckdns_subdomains.txt
duckdns_token:
file: duckdns_token.txt
Your secret files should just be plain text strings containing subdomains/tokens
subdomain1,subdomain2
your_duckdns_token
docker build -t duckdns .
Content type
Image
Digest
sha256:2f4352a08…
Size
9.2 MB
Last updated
about 3 years ago
docker pull anujdatar/duckdns