Comment auto-héberger Hoard avec Docker (self-hosted)
Mis à jour 2026-10-09
Hoard est open source et auto-hébergeable. Au lieu d'utiliser Hoard Cloud, vous pouvez exécuter le même hoard-server sur votre propre machine et y connecter chaque appareil — sans compte, sans quota au-delà du disque que vous lui donnez. Ce guide met un serveur en route avec Docker en quelques minutes.
Pourquoi auto-héberger Hoard
- Maîtrise totale. Vos sauvegardes vivent sur du matériel que vous contrôlez, pas sur le cloud d'un autre.
- Aucun quota. L'espace n'est limité que par votre propre disque.
- Même app, mêmes fonctions. L'historique versionné et la synchro en arrière-plan fonctionnent comme avec Hoard Cloud — seul le backend change.
- Open source. Vous pouvez lire, auditer et modifier le serveur.
C'est la différence clé avec des outils comme Ludusavi : Ludusavi est excellent pour les sauvegardes locales et le cloud « apportez le vôtre » via Rclone, mais c'est à vous de câbler la synchro. Hoard vous donne un serveur de synchro géré que vous lancez une fois et auquel chaque appareil se connecte.
Ce que l'auto-hébergement veut dire pour vos données
Autant le dire franchement, car c'est là que presque toutes les comparaisons se trompent au sujet de Hoard.
Hoard Cloud est l'option gérée : vous vous connectez, et vos sauvegardes se trouvent sur nos serveurs, dans l'UE.
Un Hoard auto-hébergé est entièrement le vôtre. Vos appareils parlent à votre serveur et à rien d'autre. Il n'y a aucun compte chez nous, aucune télémétrie vers nous, aucun quota et aucun relais : rien ne passe par nos serveurs, puisque rien de chez nous n'est sur le chemin. Nous ne pouvons voir ni une sauvegarde, ni un nom de jeu, ni une adresse e-mail, pour la simple raison que rien de tout cela ne nous parvient. Si Hoard Cloud fermait demain, votre installation continuerait à l'identique.
Une précision, pour être exact : votre serveur a bel et bien ses propres accès — l'utilisateur que vous créez plus bas, et un jeton par appareil. Ils sont à vous, sur votre machine, dans votre base. Ce qui n'existe pas, c'est un compte chez nous.
Ce qu'il vous faut
- Une machine qui reste allumée (serveur maison, NAS exécutant Docker ou petit VPS).
- Docker et Docker Compose installés (sur un NAS Synology, le paquet Container Manager).
- Éventuellement un nom de domaine et un reverse proxy pour le HTTPS (recommandé au-delà de votre réseau local).
Installation avec Docker Compose
Inutile de cloner le dépôt. Le serveur est une image prête à l'emploi (ghcr.io/rleeon/hoard, amd64 et arm64), et le seul fichier à télécharger est son docker-compose.yml :
mkdir hoard && cd hoard
curl -O https://raw.githubusercontent.com/rleeon/hoard/main/deploy/docker/docker-compose.yml
# Used only on the first start: they create that admin and print a device token in the log, once
HOARD_ADMIN_USERNAME=alice HOARD_ADMIN_PASSWORD='CHANGE_ME' docker compose up -d
docker compose logs -f server # wait for "listening", then copy the token
Au premier démarrage, le conteneur écrit un config.toml fonctionnel dans ./config/, à côté du fichier compose : avec un simple docker compose, il n'y a donc rien à préparer. Les données vivent dans un volume Docker nommé (hoard-data) — sauvegardez-le comme n'importe quel volume. Le conteneur écoute en interne sur le port 12421 ; choisissez un autre port hôte avec HOARD_PORT=9000 docker compose up -d.
Vous préférez lire la configuration avant tout démarrage, ou construire l'image vous-même ? Le guide d'auto-hébergement du dépôt explique comment le cloner.
Sur un NAS Synology (Container Manager)
Container Manager n'a pas de ligne de commande pour passer ces deux variables, et refuse de démarrer un projet tant qu'un dossier monté manque : c'est l'erreur Bind mount failed: '…/config' does not exist. Quatre étapes règlent les deux :
Dans File Station, créez un dossier pour Hoard (par exemple
docker/hoard) et, dedans, un dossierconfigvide.Dans Container Manager, ouvrez Project → Create, choisissez ce dossier comme chemin, optez pour la création d'un
docker-compose.ymlet collez-y le contenu du fichier (ouvrez l'URL de la lignecurlci-dessus dans un navigateur pour l'obtenir).Dans le fichier collé, remplacez
${HOARD_ADMIN_USERNAME:-}et${HOARD_ADMIN_PASSWORD:-}par le nom d'utilisateur et le mot de passe de votre administrateur, sans toucher au reste de chaque ligne, pour obtenir :HOARD_ADMIN_USERNAME: alice HOARD_ADMIN_PASSWORD: 'CHANGE_ME'Terminez l'assistant pour le démarrer, puis ouvrez le journal de
hoard-serverdans Container : le jeton d'appareil y est affiché, une seule fois.
Avec le fichier tel quel, les sauvegardes vivent dans le stockage propre de Docker, hors de vos dossiers partagés. Pour les garder dans un dossier partagé que vous sauvegardez déjà, créez aussi un dossier data à côté de config et remplacez la ligne hoard-data:/var/lib/hoard par ./data:/var/lib/hoard.
Créez votre utilisateur et un jeton d'appareil
Si vous l'avez démarré avec HOARD_ADMIN_USERNAME et HOARD_ADMIN_PASSWORD, c'est déjà fait : l'utilisateur existe et son jeton est dans les logs. Sinon, créez-les en ligne de commande, car le serveur n'a pas d'écran d'inscription :
docker compose exec server hoard-admin --config /etc/hoard/config.toml \
user create alice --admin --password 'CHANGE_ME'
docker compose exec server hoard-admin --config /etc/hoard/config.toml \
token create alice --device 'desktop'
Le jeton n'est affiché qu'une fois et ne peut pas être récupéré ensuite, copiez-le maintenant. Pour chaque appareil ajouté plus tard, pas besoin de terminal : ouvrez l'adresse de votre serveur dans un navigateur, connectez-vous au panneau web avec ce nom d'utilisateur et ce mot de passe, puis utilisez Utilisateurs → Nouveau jeton.
Connectez l'application de bureau
Installez l'app de bureau Hoard sur chaque machine. Dans l'assistant, choisissez Self-Host, puis collez l'URL de votre serveur et le jeton que vous venez de créer. Ensuite, le comportement est identique à Hoard Cloud : détection des jeux, sauvegarde automatique et historique versionné. Voir synchroniser ses sauvegardes entre PC pour l'usage quotidien.
Gardez votre serveur à jour
La façon de mettre à jour dépend de la façon dont vous l'avez installé, et se tromper de commande ne produit pas d'erreur : cela ne fait tout simplement rien. Autant savoir laquelle est la vôtre.
Docker Compose. Récupérez la nouvelle image et recréez le conteneur. Les deux moitiés, dans cet ordre :
docker compose pull
docker compose up -d
Si vous vous arrêtez à la première, l'ancien conteneur continue de tourner intact : /v1/health annonce toujours l'ancienne version et la mise à jour a l'air d'avoir échoué en silence. git pull ne met à jour ni l'un ni l'autre — ce qui tourne, c'est l'image publiée, pas votre copie du dépôt. Épinglez une version (ghcr.io/rleeon/hoard:1.1) au lieu de :latest si vous préférez choisir quand une nouvelle arrive.
Unraid. Onglet Docker → Hoard → Apply update quand une mise à jour est proposée. Rien à taper.
Bare metal (systemd). sudo hoard-server upgrade, puis sudo systemctl restart hoard-server. La commande remplace le binaire de façon atomique et ne redémarre volontairement pas le service elle-même, pour ne pas couper une synchro en cours.
hoard-server upgrade ne concerne que l'installation bare metal. Dans un conteneur, elle refuse volontairement — le remplacement du binaire ne survivrait pas au prochain docker compose up -d — et affiche les deux commandes ci-dessus ; lancez docker compose exec server hoard-server upgrade si vous voulez le constater. Les migrations de base de données sont appliquées par le serveur au démarrage : il n'y a jamais d'étape séparée pour elles.
En production
Pour tout ce qui dépasse votre réseau local, terminez le TLS sur un reverse proxy (Caddy, nginx ou Traefik). Plutôt bare metal ? Le dépôt fournit aussi un script d'installation systemd et une commande hoard-server upgrade qui remplace le binaire de façon atomique sans interrompre une synchro en cours.
Auto-hébergement ou Hoard Cloud ?
L'auto-hébergement est idéal si vous avez déjà un serveur et voulez un contrôle total sans quota. Si vous préférez ne pas gérer d'infrastructure, Hoard Cloud vous offre la même synchro gérée pour vous, avec une offre gratuite pour démarrer. Dans les deux cas, l'app et vos sauvegardes restent portables — vous pouvez changer plus tard.
Questions fréquentes
Un Hoard auto-hébergé communique-t-il avec vous ?
Non. L'application de bureau parle à l'adresse de serveur que vous lui donnez. Vos sauvegardes, vos utilisateurs et vos journaux restent sur votre machine, et rien de tout cela ne nous parvient.
Le serveur auto-hébergé est-il le même code que Hoard Cloud ?
Oui, le même binaire hoard-server, sous AGPL-3.0. Il n'y a pas d'édition communautaire allégée ni de fonction réservée à la version hébergée.
Où sont réellement stockées les sauvegardes ?
Par défaut dans le volume Docker que vous donnez au conteneur, sur votre propre disque. Si vous avez déjà du stockage objet, le serveur parle aussi S3 : MinIO, Garage ou Backblaze B2 font l'affaire. Dans tous les cas, vos appareils ne parlent qu'à votre serveur.
Puis-je le faire tourner sur un NAS ?
Oui, sur n'importe quel NAS qui exécute Docker. Sur Synology, suivez les étapes Container Manager ci-dessus ; pour Unraid, le dépôt fournit un modèle. Dans les deux cas, l'image bascule sur les PUID/PGID que vous indiquez, pour que les dossiers montés appartiennent au bon utilisateur plutôt qu'à root.
Ai-je besoin d'un domaine et de HTTPS ?
Pas sur votre réseau local. Dès que le serveur est joignable de l'extérieur, placez un reverse proxy devant et terminez-y le TLS : Caddy, nginx ou Traefik conviennent.
Et si mon serveur est éteint quand j'arrête de jouer ?
L'instantané est pris localement, rien n'est perdu. Il s'envoie tout seul dès que le serveur répond à nouveau.
Puis-je commencer sur Hoard Cloud et migrer plus tard ?
Oui, dans les deux sens. Vous pouvez tout exporter depuis la page de votre compte, et l'application peut pointer vers un autre serveur sans réinstallation.
Prêt à protéger et synchroniser vos sauvegardes ?
Téléchargez Hoard : des sauvegardes automatiques et versionnées, et vos parties synchronisées sur tous vos PC et votre Steam Deck, en quelques minutes.
Télécharger