-
-
Notifications
You must be signed in to change notification settings - Fork 46
/
readme-vars.yml
83 lines (73 loc) · 5.22 KB
/
readme-vars.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
---
# project information
project_name: duckdns
project_url: "https://duckdns.org/"
project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/duckdns.png"
project_blurb: "[{{ project_name|capitalize }}]({{ project_url }}) 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."
project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_name }}"
# supported architectures
available_architectures:
- { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
- { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
# container parameters
common_param_env_vars_enabled: 'optional' #PGID, PUID, etc, you can set it to 'optional'
param_container_name: "{{ project_name }}"
param_usage_include_net: 'optional' #you can set it to 'optional'
param_net: "host"
param_net_desc: "Use host networking for IPv6 detection"
param_usage_include_env: true
param_env_vars:
- { env_var: "SUBDOMAINS", env_value: "subdomain1,subdomain2", desc: "multiple subdomains allowed, comma separated, no spaces, if your domain is user.duckdns.org you put user, not a sub-subdomain"}
- { env_var: "TOKEN", env_value: "token", desc: "DuckDNS token"}
# optional container parameters
opt_param_usage_include_env: true
opt_param_env_vars:
- { env_var: "UPDATE_IP", env_value: "ipv4", desc: "Set to `ipv6` or `ipv4` to update **only** your public IPv4/6 address. Set to `both` to update IPv6 and IPv4 address. This variable makes use of a [third-party service](#notice-regarding-automatic-detection). Omitting this variable uses DuckDNS for detection and only supports IPv4. `both` and `ipv6` modes needs [host networking](#networking-net).", env_options: ["", "ipv4", "ipv6", "both"] }
- { env_var: "LOG_FILE", env_value: "false", desc: "Set to `true` to log to file (also need to map /config).", env_options: ["false", "true"] }
opt_param_usage_include_vols: true
opt_param_volumes:
- { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Persistent config files. Also set `LOG_FILE=true` to keep address history." }
readonly_supported: true
# application setup block
app_setup_block_enabled: true
app_setup_block: |
- Go to the [duckdns website]({{project_url}}), register your subdomain(s) and retrieve your token.
- Create a container with your subdomain(s) and token. If you own `user.duckdns.org`, you set `SUBDOMAINS=user`. You would NOT set a sub subdomain like `overseerr` from `overseerr.user.ducksdns.org`.
- It will update your IP with the DuckDNS service every 5 minutes (with a random jitter).
## 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.
**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.
# changelog
changelogs:
- { date: "24.06.24:", desc: "Rebase to Alpine 3.20." }
- { date: "17.06.24:", desc: "Bump CI_DELAY to 120 seconds as ARM builds were failing." }
- { date: "30.03.24:", desc: "Added IP address to logging output when IP changes." }
- { date: "23.12.23:", desc: "Rebase to Alpine 3.19." }
- { date: "14.10.23:", desc: "Rework shell script for case insensitivity and update readme to be more clear." }
- { date: "13.10.23:", desc: "Add support for public IPv6 address update using Cloudflare." }
- { date: "25.05.23:", desc: "Rebase to Alpine 3.18, deprecate armhf." }
- { date: "02.03.23:", desc: "Rework shell scripts and cron logic." }
- { date: "13.02.23:", desc: "Rebase to alpine 3.17." }
- { date: "23.09.22:", desc: "Rebase to alpine 3.16 and s6v3." }
- { date: "19.09.22:", desc: "Rebase to alpine 3.15." }
- { date: "17.05.22:", desc: "Don't allow insecure connections and add timeout." }
- { date: "17.05.22:", desc: "Add random jitter to update time." }
- { date: "23.02.22:", desc: "Append to log file instead of overwriting every time." }
- { date: "03.05.21:", desc: "Re-adjust cron timings to prevent peak times, update code formatting." }
- { date: "23.01.21:", desc: "Rebasing to alpine 3.13." }
- { date: "01.06.20:", desc: "Rebasing to alpine 3.12." }
- { date: "13.04.20:", desc: "Add donation links for DuckDNS." }
- { date: "19.12.19:", desc: "Rebasing to alpine 3.11." }
- { date: "24.09.19:", desc: "Fix perms on github and remove chmod that can stall the container." }
- { date: "28.06.19:", desc: "Rebasing to alpine 3.10." }
- { date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag." }
- { date: "22.02.19:", desc: "Rebasing to alpine 3.9." }
- { date: "08.02.19:", desc: "Update readme with optional parameters." }
- { date: "10.12.18:", desc: "Fix docker compose example." }
- { date: "15.10.18:", desc: "Multi-arch image." }
- { date: "22.08.18:", desc: "Rebase to alpine 3.8." }
- { date: "08.12.17:", desc: "Rebase to alpine 3.7." }
- { date: "28.05.17:", desc: "Rebase to alpine 3.6." }
- { date: "09.02.17:", desc: "Rebase to alpine 3.5." }
- { date: "17.11.16:", desc: "Initial release." }