happyDomain est sponsorisé par Docker.
Vous trouverez notre image officielle sur le Docker Hub.
L’image exécute happyDomain en tant que processus unique avec une base de données LevelDB stockée sur le disque — aucune base de données supplémentaire à configurer.
Versions, étiquettes et architectures supportées
Toutes les étiquettes (tags) sont construites pour amd64, arm64 et arm/v7 et sont basées sur Alpine.
Les étiquettes actuellement disponibles :
latest : la version la plus récente, correspondant à la branche master de notre dépôt.
Démarrage rapide (conteneur unique)
Pour un test rapide ou un usage personnel, utilisez HAPPYDOMAIN_NO_AUTH=1 pour désactiver la gestion des comptes :
docker run -e HAPPYDOMAIN_NO_AUTH=1 -p 8081:8081 happydomain/happydomain
Les données sont stockées à l’intérieur du conteneur. Pour les conserver entre les redémarrages, attachez un volume :
happyDomain intègre tous les vérificateurs (checkers) en natif, mais certains
d’entre eux s’appuient sur des outils externes (DNSViz, Zonemaster, Matrix
federation tester) distribués dans leurs propres images Docker. Les faire
tourner comme des services séparés vous donne l’expérience complète des
vérificateurs et une meilleure isolation.
L’approche recommandée est docker compose. Enregistrez le fichier suivant
sous le nom docker-compose.yml et lancez docker compose up -d.
Chaque vérificateur tourne comme un service HTTP autonome. happyDomain lui délègue
les demandes de vérification via la variable d’environnement
HAPPYDOMAIN_CHECKER_<ID>_ENDPOINT. Si aucun point d’accès n’est configuré, le
vérificateur correspondant s’exécute localement dans le processus happyDomain.
Deux vérificateurs s’appuient sur des services tiers supplémentaires :
Zonemaster (checker-zonemaster) interroge le service zonemaster/backend.
La variable HAPPYDOMAIN_CHECKER_ZONEMASTER_ZONEMASTERAPIURL indique au
vérificateur l’adresse de ce service.
Matrix federation tester (checker-matrix) interroge le service
matrixdotorg/federation-tester-backend. La variable
HAPPYDOMAIN_CHECKER_MATRIXIM_FEDERATIONTESTERSERVER pointe vers son point
d’accès de rapport.
Optionnel : happyDeliver
Si vous exploitez une instance happyDeliver pour
surveiller les flux e-mail, décommentez la ligne
HAPPYDOMAIN_CHECKER_HAPPYDELIVER_ENDPOINT et ajoutez le service correspondant :
Le service checker-blacklist fonctionne sans clé API (il utilise des listes
de blocage DNS par défaut), mais vous pouvez activer des sources supplémentaires
— Google Safe Browsing, VirusTotal, abuse.ch URLhaus — en configurant les
options d’administration correspondantes depuis l’interface d’administration de
happyDomain une fois la pile démarrée.
Interface d’administration
happyDomain expose des commandes d’administration à travers un socket Unix.
Le conteneur inclut l’utilitaire hadmin :
hadmin est une surcouche légère autour de curl — commencez par le chemin
d’URL, puis ajoutez les options curl après.
Utilisation d’un fichier de configuration
Plutôt que des variables d’environnement, vous pouvez placer un fichier de
configuration dans /data/happydomain.conf (dans le volume de données) ou le
monter directement sur /etc/happydomain.conf :
docker run -v happydomain.conf:/etc/happydomain.conf -p 8081:8081 happydomain/happydomain