qdm12 / ddns-updater

Container to update DNS records periodically with WebUI for many DNS providers
https://hub.docker.com/r/qmcgaw/ddns-updater/
MIT License
1.46k stars 146 forks source link

Bug: Output thousands of lines when WebUI or healthcheck server port been used by another program. #720

Closed Cassy-Lee closed 2 weeks ago

Cassy-Lee commented 1 month ago

TLDR: Output thousands of lines when WebUI or healthcheck server port been used by another program.

  1. Is this urgent: No
  2. DNS provider(s) you use: unnecessary
  3. Program version: Running version 2.6.0 built on 2024-02-03T18:57:00Z (commit c338c28ce3ab3aa9948f0fe133307b75fe6d34d2)
  4. What are you using to run the container: using zero-dependency binary
  5. Extra information (optional) Host OS: linux aarch64

Simple solutions: Give options to disable unnecessary features(WebUI and health server). Such as "DISABLE_WEBUI" and "DISABLE_HEALTH_SERVER" environment variables. Add retry limit for server restart to avoid spam.

Suggestions: Allow some configs in the config file, not only command line and environment variables. Remove (or disable) features for dockers in the standalone binary.

qdm12 commented 2 weeks ago

Remove (or disable) features for dockers in the standalone binary.

Done in 776206eec88cc4070884982e0ed488fe363e9398 - the healthcheck server won't run when outside Docker 😉

Add retry limit for server restart to avoid spam.

This is solved from commit 130ab008b5ec424665a6ee2557222ae8d4436184 where a critical error terminates the whole program. Only the backup service is auto-restarted (to zip config.json and updates.json).

Give options to disable unnecessary features(WebUI and health server)

I don't think anyone would want to disable the web ui or the health server when in Docker really, since they can just not publish ports etc. I have however added SERVER_ENABLED in cc995a79c850cb5a0c25906cf6c9f289539345d8 to disable the http server (web ui) when running outside Docker since it could get handy.