- Swap image from favonia/cloudflare-ddns:latest to
git.alexzaw.dev/alexz/cloudflare-ddns:latest (private fork with
cmd/manager binary that wraps the original ddns updater)
- Expose web UI on internal port 8080, traefik-routable
- Add CFDDNS_WEB_USER/CFDDNS_WEB_PASSWORD basic-auth form fields
- Repurpose existing DOMAINS/PROXIED/UPDATE_CRON/TZ as first-run seed
for the YAML config that the UI manages thereafter
- Mount ${APP_DATA_DIR}/data:/config for persistent cfddns.yaml
- Healthcheck on /healthz via 127.0.0.1 (alpine wget)
- Bump tipi_version 7 -> 8 to trigger app update
27 lines
792 B
YAML
27 lines
792 B
YAML
services:
|
|
cfddns:
|
|
image: 'git.alexzaw.dev/alexz/cloudflare-ddns:latest'
|
|
environment:
|
|
- 'CFDDNS_LISTEN=:8080'
|
|
- 'CFDDNS_CONFIG_FILE=/config/cfddns.yaml'
|
|
- 'CFDDNS_WEB_USER=${CFDDNS_WEB_USER}'
|
|
- 'CFDDNS_WEB_PASSWORD=${CFDDNS_WEB_PASSWORD}'
|
|
- 'CLOUDFLARE_API_TOKEN=${CLOUDFLARE_API_TOKEN}'
|
|
- 'DOMAINS=${DOMAINS:-}'
|
|
- 'PROXIED=${PROXIED:-false}'
|
|
- 'UPDATE_CRON=${UPDATE_CRON:-@every 5m}'
|
|
- 'TZ=${TZ:-UTC}'
|
|
volumes:
|
|
- '${APP_DATA_DIR}/data:/config'
|
|
healthcheck:
|
|
test: ['CMD-SHELL', 'wget --spider -q http://127.0.0.1:8080/healthz || exit 1']
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
x-runtipi:
|
|
is_main: true
|
|
internal_port: 8080
|
|
x-runtipi:
|
|
schema_version: 2
|