Installation et configuration de DuckDNS avec Docker

Introduction

Dans ce petit tutoriel, nous allons voir comment installer un service de DNS dynamique.

Dans le cadre d’un homelab, l’accès distant est souvent compliqué par les adresses IP dynamiques attribuées par les fournisseurs d’accès à Internet (FAI), qui changent régulièrement.

DuckDNS.org est un service de DNS dynamique gratuit qui résout ce problème en associant un domaine fixe (ex. yourdomain.duckdns.org) à votre adresse IP publique, même si celle-ci change fréquemment. Cela garantit un accès continu à vos services hébergés (Nextcloud, serveur web, etc.) via une URL stable.

Simple à configurer et automatisé, DuckDNS simplifie l’accès distant dans un environnement résidentiel. Nous allons installer ce service avec Docker pour une gestion encore plus efficace et automatisée.

Configuration

La première étape consiste à créer un compte sur le site de DuckDNS, accessible à l’adresse suivante : https://www.duckdns.org/

Un token unique sera ensuite généré et associé à votre compte. Ce token servira à connecter votre application locale aux serveurs DuckDNS, assurant ainsi la mise à jour automatique de votre domaine avec votre adresse IP.

Une image contenant texte, oiseau, dessin humoristique, internet

Description générée automatiquement

Nous allons ensuite créer un nom de domaine personnalisé avec le suffixe duckdns.org.

Par exemple, si vous souhaitez créer le domaine qwazerty.duckdns.org, il vous suffit de choisir et ajouter le préfixe, comme qwazerty.duckdns.org pour personnaliser votre nom de domaine.

Un message de confirmation apparaîtra pour indiquer que l’opération a réussi

Votre adresse IP publique sera automatiquement détectée et associée à votre domaine.

Installation de DuckDns sur docker

Pour automatiser la mise à jour de votre domaine sans intervention manuelle, nous allons installer DuckDNS avec Docker sur une machine virtuelle. Assurez-vous que Docker est déjà installé en tant que prérequis avant de poursuivre.

Nous allons commencer par créer un dossier de travail pour le service DuckDNS :

sudo mkdir duckdns && cd duckdns 

Ensuite, nous allons créer et éditer le fichier Docker Compose qui contiendra la configuration du service :

sudo nano docker-compose.yml 

Insérer le contenu suivant :

services: 
    duckdns:
      image: lscr.io/linuxserver/duckdns:latest
      container_name: duckdns
      network_mode: duckdns #optional
      environment:
        - PUID=1000 #optional
        - PGID=1000 #optional
        - TZ=Europe/Paris #optional
        - SUBDOMAINS=#your_subdomains
        - TOKEN=#your_token
        - UPDATE_IP=ipv4 #optional
        - LOG_FILE=true #optional
      volumes:
        - ./config:/config #optional
restart: unless-stopped

Ensuite, exécutez le conteneur en arrière-plan avec la commande suivante :

sudo docker compose up -d 

Pour consulter les logs du service DuckDNS, vous pouvez vérifier le fichier à l’emplacement suivant :

duckdns/config/duck.log 

Conclusion

En suivant ce tutoriel, nous avons vu comment installer et configurer le service DuckDNS dans un environnement Docker pour gérer un domaine dynamique dans un homelab. Votre adresse IP publique sera automatiquement mise à jour, garantissant un accès continu et fiable à vos services hébergés même si l’adresse change fréquemment.

Si vous disposez d’un nom de domaine personnalisé, vous pourrez enregistrer votre nom de domaine DuckDNS avec un CNAME sur votre nom de domaine personnalisé auprès de votre fournisseur DNS pour que le faire pointer correctement vers votre réseau domicile.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut