2.0 KiB
Hetzner DynDNS
Weboberfläche für mehrere Hetzner-DNS-Zonen, Subdomains und Benutzer. Aktivierte A- und AAAA-Records werden regelmäßig auf die aktuelle öffentliche IP gesetzt.
Starten
Die Datei compose.yml in Portainer, Dockge oder einem anderen Docker-Webinterface als Stack einfügen und starten.
Alternativ im ausgecheckten Repository:
docker compose up -d
Danach aufrufen:
http://IP-DES-DOCKER-HOSTS:9090
Beim ersten Start werden Datenbank und Verschlüsselungsschlüssel automatisch in getrennten Docker-Volumes angelegt. Es werden keine .env-Datei und kein manuell erzeugtes Secret benötigt.
Das Compose
services:
dyndns:
image: git.j-mahler.de/admin/domain-control-webinterface-prod:v1.1.0
restart: unless-stopped
ports:
- "9090:8080"
volumes:
- dyndns-data:/data
- dyndns-secrets:/secrets
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
volumes:
dyndns-data:
dyndns-secrets:
Soll ein anderer Port verwendet werden, muss nur die linke Zahl geändert werden.
Aktualisieren
In compose.yml die Versionsnummer beim Image ändern, anschließend das Image ziehen und den Stack neu bereitstellen. Auf der Kommandozeile:
docker compose pull
docker compose up -d
Benutzer, Domains und Einstellungen bleiben in dyndns-data. Der Schlüssel für gespeicherte API-Tokens liegt in dyndns-secrets. Für ein vollständiges Backup müssen beide Volumes gesichert werden.
Funktionen
- mehrere Domains und getrennt verschlüsselte Hetzner-API-Tokens
- automatischer Import vorhandener A-/AAAA-Records
- DynDNS pro Subdomain und IP-Familie aktivierbar
- lokales Archiv statt Löschen von Hetzner-Records
- frei einstellbares Update-Intervall mit Countdown
- Admin- und Mitgliedskonten mit Domain- oder Subdomain-Rechten
Port 9090 verwendet zunächst unverschlüsseltes HTTP. Den Port daher nur in einem vertrauenswürdigen Netz freigeben und nicht offen ins Internet stellen.