refactor(duckdns): improve config and remove gui

This commit is contained in:
Nicolas Meienberger 2024-02-29 08:43:02 +01:00
parent 8ccc53a4c7
commit b7709fc477
3 changed files with 49 additions and 52 deletions

View File

@ -1,46 +1,47 @@
{
"name": "Duck DNS",
"available": true,
"port": 8026,
"exposable": false,
"id": "duckdns",
"description": "Duck DNS is a free service which will point a DNS (sub domains of duckdns.org) to an IP of your choice",
"tipi_version": 1,
"version": "b14c520a-ls8",
"categories": ["network"],
"short_desc": "Duck DNS is a free Dynamic DNS service",
"author": "linuxserver.io",
"source": "https://github.com/linuxserver/docker-duckdns",
"website": "https://docs.linuxserver.io/images/docker-duckdns/",
"supported_architectures": ["arm64", "amd64"],
"form_fields": [
{
"type": "text",
"label": "Subdomains (comma separated). E.g. `mydomain1,mydomain2`.",
"max": 1024,
"min": 3,
"required": true,
"env_variable": "DUCKDNS_SUBDOMAINS"
},
{
"type": "password",
"label": "DuckDNS Token",
"max": 128,
"min": 3,
"required": true,
"env_variable": "DUCKDNS_TOKEN"
},
{
"type": "text",
"label": "Update IP (blank, ipv4, ipv6 or both). Setting this value uses external Cloudflare whoami service. Omitting the field uses DuckDNS for detection and only supports IPv4.",
"required": false,
"env_variable": "DUCKDNS_UPDATE_IP"
},
{
"type": "boolean",
"label": "Enable logging",
"required": false,
"env_variable": "DUCKDNS_ENABLE_LOG_FILE"
}
]
}
"name": "Duck DNS",
"available": true,
"port": 8026,
"exposable": false,
"id": "duckdns",
"description": "Duck DNS is a free service which will point a DNS (sub domains of duckdns.org) to an IP of your choice",
"tipi_version": 1,
"no_gui": true,
"version": "b14c520a-ls8",
"categories": ["network"],
"short_desc": "Duck DNS is a free Dynamic DNS service",
"author": "linuxserver.io",
"source": "https://github.com/linuxserver/docker-duckdns",
"website": "https://docs.linuxserver.io/images/docker-duckdns/",
"supported_architectures": ["arm64", "amd64"],
"form_fields": [
{
"type": "text",
"label": "Subdomains (comma separated). E.g. `mydomain1,mydomain2`.",
"max": 1024,
"min": 3,
"required": true,
"env_variable": "DUCKDNS_SUBDOMAINS"
},
{
"type": "password",
"label": "DuckDNS Token",
"max": 128,
"min": 3,
"required": true,
"env_variable": "DUCKDNS_TOKEN"
},
{
"type": "text",
"label": "Update IP (blank, ipv4, ipv6 or both). Setting this value uses external Cloudflare whoami service. Omitting the field uses DuckDNS for detection and only supports IPv4.",
"required": false,
"env_variable": "DUCKDNS_UPDATE_IP"
},
{
"type": "boolean",
"label": "Enable logging",
"required": false,
"env_variable": "DUCKDNS_ENABLE_LOG_FILE"
}
]
}

View File

@ -1,4 +1,4 @@
version: "3.9"
version: '3.9'
services:
duckdns:
container_name: duckdns # Should be exact same name as "id" field in config.json
@ -12,9 +12,7 @@ services:
- UPDATE_IP=${DUCKDNS_UPDATE_IP}
- LOG_FILE=${DUCKDNS_ENABLE_LOG_FILE}
volumes:
- ${APP_DATA_DIR}/data:/config
ports:
- ${APP_PORT}:80
- ${APP_DATA_DIR}/data/config:/config
restart: unless-stopped
networks:
- tipi_main_network

View File

@ -2,8 +2,6 @@
[Duckdns](https://duckdns.org/) is a free service which will point a DNS (sub domains of duckdns.org) to an IP of your choice. The service is completely free, and doesn't require reactivation or forum posts to maintain its existence.
[![duckdns](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/duckdns.png)](https://duckdns.org/)
## Application Setup
- Go to the [duckdns website](https://duckdns.org/), register your subdomain(s) and retrieve your token
@ -12,7 +10,7 @@
## Notice regarding automatic detection
Using the `UPDATE_IP` variable whatever its value (`ipv4`, `ipv6` or `both`) uses external *Cloudflare whoami* service to detect public IP addresses.
Using the `UPDATE_IP` variable whatever its value (`ipv4`, `ipv6` or `both`) uses external _Cloudflare whoami_ service to detect public IP addresses.
**Be aware that using this variable will query a third-party service other than DuckDNS.**
Omitting the `UPDATE_IP` variable uses DuckDNS for detection and only supports IPv4.