Pourquoi héberger Homepage sur votre VPS
Homepage (gethomepage.dev) est un dashboard statique écrit en Next.js, conçu pour être la page d'accueil de votre infrastructure. Contrairement aux solutions SaaS de type start page, tout reste sous votre contrôle : la configuration vit dans de simples fichiers YAML, les widgets interrogent vos propres services (Proxmox, qBittorrent, Sonarr, Pi-hole…), et aucune donnée ne transite par un cloud externe. L'héberger sur un VPS le rend accessible partout, depuis n'importe quel navigateur, la page étant quasi entièrement servie en statique. C'est aussi le point d'entrée idéal pour piloter une stack Docker grandissante : un seul fichier services.yaml suffit pour cartographier des dizaines de conteneurs.
Les bénéfices concrets d'un Homepage auto-hébergé
- Configuration en YAML versionnable dans Git : vous reconstruisez votre dashboard à l'identique en quelques secondes.
- Widgets natifs pour plus de 100 services (Docker, Proxmox, Plex, Grafana, AdGuard) avec affichage de stats en temps réel.
- Détection automatique des conteneurs Docker via les labels, sans saisie manuelle des URLs.
- Empreinte mémoire minime : moins de 128 Mo de RAM, idéal sur un petit VPS.
- Aucune télémétrie ni dépendance cloud : votre page d'accueil reste 100 % privée.
- Personnalisation totale du thème, des fonds d'écran et de la barre de recherche.
Prérequis techniques
Homepage est très léger. Un VPS avec 1 vCPU et 1 Go de RAM est largement suffisant, même en cumulant d'autres conteneurs. Comptez environ 300 Mo d'espace disque pour l'image et la configuration. Vous aurez besoin de Docker et Docker Compose (v2) installés, d'un nom de domaine ou sous-domaine pointant vers l'IP du VPS (ex : home.mondomaine.com), et d'un reverse proxy comme Traefik ou Caddy pour gérer le HTTPS. Si vous voulez exploiter les widgets Docker, montez le socket /var/run/docker.sock en lecture seule.
Déployer Homepage avec Docker en 5 étapes
Préparer l'arborescence
Connectez-vous en SSH à votre VPS et créez les dossiers :
mkdir -p ~/homepage/config. Les fichiersservices.yaml,widgets.yaml,settings.yamletbookmarks.yamlseront générés au premier démarrage dans ce dossier.Écrire le docker-compose.yml
Dans
~/homepage/docker-compose.yml, déclarez le service avec l'imageghcr.io/gethomepage/homepage:latest, montez./config:/app/configet le socket Docker/var/run/docker.sock:/var/run/docker.sock:ro. Ajoutez la variableHOMEPAGE_ALLOWED_HOSTS=home.mondomaine.compour autoriser votre domaine.Lancer le conteneur
Exécutez
docker compose up -dpuis vérifiez avecdocker compose logs -f. Homepage écoute par défaut sur le port3000. Testez localement aveccurl http://localhost:3000.Brancher le reverse proxy et le SSL
Avec Caddy, une seule ligne suffit :
home.mondomaine.com { reverse_proxy localhost:3000 }. Caddy génère et renouvelle automatiquement le certificat Let's Encrypt. Avec Traefik, ajoutez les labelstraefik.http.routers.homepage.rule=Host(\home.mondomaine.com\)et le resolver ACME.Personnaliser services et widgets
Éditez
config/services.yamlpour grouper vos applications, puisconfig/widgets.yamlpour la barre de ressources (CPU, RAM, disque). Rechargez la page : Homepage relit la configuration à chaud, sans redémarrage du conteneur.
Activez la découverte automatique en ajoutant des labels homepage.group, homepage.name et homepage.href directement sur vos autres conteneurs Docker. Homepage les détecte via le socket monté et les ajoute au dashboard sans toucher à services.yaml. Couplé à un fichier .env pour stocker vos clés d'API de widgets (jamais en clair dans le YAML versionné), vous obtenez un dashboard qui se met à jour tout seul à chaque nouveau déploiement.
Aller plus loin : installer Homepage via le Marketplace ServOrbit
Si vous préférez ne pas configurer Docker manuellement, le Marketplace ServOrbit propose Homepage en installation guidée. En quelques clics depuis votre tableau de bord client, un VPS est provisionné avec Homepage prêt à l'emploi — image officielle, port lié en loopback et variable HOMEPAGE_ALLOWED_HOSTS préconfigurée. Retrouvez la fiche complète, les spécifications minimales et le bouton d'installation sur la page dédiée du Marketplace.