Files
2026-06-09 18:40:21 +02:00

5.1 KiB


title: DDNS Updater created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, dns, ddns, docker, networking, auto-hebergement] confidence: high contested: false sources: [https://selfh.st/apps/?tag=DNS, https://github.com/qdm12/ddns-updater]

DDNS Updater

📝 Description

Container to update DNS records periodically with WebUI for many DNS providers

DDNS Updater est un container moderne et léger qui met à jour automatiquement les enregistrements DNS dynamiques pour plus de 50 fournisseurs DNS. Il dispose d'une interface web intuitive pour la configuration et le monitoring.


📊 Métadonnées

Propriété Valeur
Nom DDNS Updater
Slug ddns-updater
Catégorie DNS
Repository qdm12/ddns-updater
Stars 3,089
Licence MIT
Type Application

🏷️ Tags

#catalogue #dns #ddns #docker #networking #home-lab


🚀 Fonctionnalités

  • 🌐 Support de 50+ fournisseurs DNS (Cloudflare, GoDaddy, OVH, Gandi, DigitalOcean, etc.)
  • 🖥️ Interface WebUI pour configuration et monitoring
  • 🔄 Mise à jour automatique des enregistrements DNS
  • 📊 Historique des mises à jour et logs détaillés
  • 🔔 Notifications (Discord, Slack, Pushover, Telegram, etc.)
  • 🔒 Support IPv4 et IPv6
  • 🐳 Container Docker léger basé sur Alpine Linux
  • ⚙️ Configuration via variables d'environnement ou fichier JSON

🐳 Docker Compose

version: "3.8"

services:
  ddns-updater:
    image: qmcgaw/ddns-updater:latest
    container_name: ddns-updater
    restart: unless-stopped
    ports:
      - "8000:8000/tcp"
    environment:
      - CONFIG=
      - PERIOD=5m
      - UPDATE_COOLDOWN_PERIOD=5m
      - PUBLICIP_FETCHERS=all
      - PUBLICIP_HTTP_PROVIDERS=all
      - PUBLICIPV4_HTTP_PROVIDERS=all
      - PUBLICIPV6_HTTP_PROVIDERS=all
      - PUBLICIP_DNS_PROVIDERS=all
      - PUBLICIP_DNS_TIMEOUT=3s
      - HTTP_TIMEOUT=10s
      - DATADIR=/updater/data
      - SHOUTRRR_ADDRESSES=
      - SHOUTRRR_DEFAULT_TITLE="DDNS Updater"
      - TZ=Europe/Paris
    volumes:
      - ./data:/updater/data
    healthcheck:
      test: ["CMD", "/updater/ddns-updater", "healthcheck"]
      interval: 60s
      timeout: 5s
      retries: 1
      start_period: 10s

⚙️ Configuration

Configuration via fichier JSON

Créez un fichier config.json dans le dossier data :

{
  "settings": [
    {
      "provider": "cloudflare",
      "zone_identifier": "votre_zone_id",
      "domain": "votre-domaine.com",
      "host": "@",
      "ttl": 1,
      "token": "votre_api_token",
      "ip_version": "ipv4"
    }
  ]
}

Variables d'environnement

Variable Description Défaut
CONFIG Configuration JSON inline -
PERIOD Intervalle de vérification 5m
PUBLICIP_FETCHERS Méthodes de récupération IP all
TZ Fuseau horaire UTC
SHOUTRRR_ADDRESSES URLs de notification -

🔧 Fournisseurs DNS Supportés

Fournisseur IPv4 IPv6
Cloudflare
GoDaddy
OVH
Gandi
DigitalOcean
DuckDNS
Dynu
Namecheap
No-IP
... et 40+ autres - -

🌐 Accès WebUI

Une fois le container démarré, accédez à l'interface web :

http://localhost:8000

L'interface permet de :

  • Visualiser l'état des enregistrements DNS
  • Voir l'historique des mises à jour
  • Consulter les logs en temps réel
  • Vérifier les erreurs éventuelles

🔗 Alternatives

Alternative Description Différences
ddclient Client DDNS en Perl Plus ancien, pas de WebUI
inadyn Client DDNS en C Léger, configuration fichier
cloudflare-ddns Spécifique Cloudflare Uniquement Cloudflare

🔗 Pages Liées

  • app-ddclient — Client DDNS historique en Perl
  • app-pihole — Pour ajouter un blocage DNS en complément
  • cat-dns — Toutes les apps DNS du catalogue
  • app-blocky — Alternative moderne combinant DDNS et blocage

📚 Ressources


🆕 Historique des Versions

Version Date Changements
Latest - Dernière version stable

🛡️ Sécurité

  • Stockez les tokens API dans des variables d'environnement ou un fichier sécurisé
  • Utilisez des permissions restreintes sur le dossier data
  • Ne commitez jamais vos credentials dans Git

Fiche créée pour le catalogue self-hosted DNS