Aller au contenu

Glance : le nouveau tableau de bord de votre Homelab

glance-cover

Glance est un dashboard (ou homepage) léger et hautement personnalisable qui affiche vos liens, container docker, meteo, Fluxrss..etc dans une interface épurée et responsive. C’est l’outil parfait pour centraliser toutes vos données (RSS, Météo, Server Stats) en un seul endroit. Il se positionne comme alternative à des solutions similaires telles que Homepage et Homarr.

Voici par exemple mon homelab avec Glance :

Ce n’est pas encore le plus beau dashboard possible avec Glance ! 😅 Il est encore en cours de construction j’améliore petit à petit l’apparence et l’organisation de mes widgets.

Pourquoi j’ai choisi Glance par rapport à d’autres solutions ?

  1. Légèreté et Performance : Glance est conçu pour être extrêmement rapide et léger, avec un faible usage mémoire. Son binaire est de petite taille (moins de 20MB).
  2. Personnalisation et Flexibilité des Widgets : Il offre une très large gamme de widgets (RSS, Météo, Hacker News, Twitch, Statuts Docker, Server Stats) qui vous permettent de centraliser presque toutes vos sources d’information. La possibilité d’utiliser différents layouts, de multiples pages/onglets, d’appliquer du CSS personnalisé.
  3. Optimisation mobile : Glance est optimisé pour les appareils mobiles (responsive).
  4. Simple : modifiable depuis un simple glance.yml.

Exemple pour la partie responsible :

Vous êtes convaincu, très bien, commençons l’installation !

Grâce à sa légèreté (un binaire unique de moins de 20MB) et peu de dépendances, l’installation est simplifiée. Elle ne nécessite qu’un seul fichier de configuration.

Étape 1 : Créer le fichier docker-compose.yml avec la configuration suivante :

version: "3.8"
services:
glance:
image: glanceapp/glance:latest
container_name: glance
ports:
- "8080:8080"
volumes:
- ./glance.yml:/app/glance.yml
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped

Étape 2 : Configurer le fichier glance.yml selon vos besoins (voir la section Utilisation ci-dessous pour des exemples de configuration).

Étape 3 : Lancer la commande suivante pour démarrer le service :

Fenêtre de terminal
docker-compose up -d

Glance sera accessible à l’adresse http://localhost:8080.

  • Étape 1 : Passer par Community Applications pour ajouter l’application.

  • Étape 2 : Configurer les chemins pour vos volumes, ainsi que le docker.sock (si vous souhaitez utiliser le widget docker).

Cliquer ensuite sur APPLY. Puis rendez-vous sur http://IP_SERVER_UNRAID:WEB_UI_PORT, modifier par rapport au port que vous avez mis et l’IP de votre server Unraid.

Vous n’avais plus qu’a configurer le ficher glance.yml dans le volume (ici /mnt/user/appdata/glance/config).

Quelques exemples de widgets et de configurations que j’utilise.

Afficher les nouvelles vidéos d’une chaîne YouTube

Section intitulée « Afficher les nouvelles vidéos d’une chaîne YouTube »

Il est possible d’afficher les dernières vidéos publiées par une ou plusieurs chaînes YouTube directement dans Glance grâce au widget dédié :

- type: videos
channels:
- UCR-DXc1voovS8nhAvccRZhg # Jeff Geerling
- UCPvOHaaP9E6FqSqG1NMV_Hw # Raycast

Pour récupérer cette id :

  1. Ouvrez la page YouTube de la chaîne.
  2. Clic droit → Afficher le code source (ou Ctrl+U).
  3. Faites une recherche (Ctrl+F) pour channelId.

Vous trouverez une ligne du genre : "channelId":"UCXuqSBlHAE6Xw-yeJA0Tunw"

Le widget Docker Containers permet d’afficher l’état de vos conteneurs et d’accéder rapidement à leurs interfaces web.

Exemple avec n8n :

- type: docker-containers
containers:
n8n:
name: n8n
description: Plateforme d'automatisation de workflows
url: https://n8n.domain.com
icon: si:n8n

Propriétés disponibles :

  • name : Le nom d’affichage du conteneur
  • description : Une description du service
  • url : L’URL pour accéder au service (optionnel)
  • icon : L’icône à afficher (voir la documentation des icônes)
  • hide : Masquer le conteneur s’il n’est pas en cours d’exécution (par défaut : false)

⚠️ Pour que ce widget fonctionne, vous devez monter le socket Docker dans le conteneur Glance en ajoutant au docker-compose.yml :

volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro

Le widget RSS vous permet d’agréger plusieurs sources d’actualités.

Exemple (ici sur une colonne de taille small) :

Exemple avec des flux financiers :

- type: rss
title: Actualités Financières
style: horizontal-cards
feeds:
- url: https://feeds.bloomberg.com/markets/news.rss
title: Bloomberg
- url: https://moxie.foxbusiness.com/google-publisher/markets.xml
title: Fox Business
- url: https://moxie.foxbusiness.com/google-publisher/technology.xml
title: Fox Business Tech

Propriétés disponibles :

  • title : Le titre du widget
  • style : Le style d’affichage (horizontal-cards, vertical-cards, ou detailed-list)
  • feeds : Liste des flux RSS à agréger
  • limit : Nombre maximum d’articles à afficher (optionnel)
  • collapse-after : Nombre d’articles visibles avant le bouton “VOIR PLUS” (optionnel)

Le widget météo vous permet d’afficher les prévisions météorologiques. Exemple pour Paris :

- type: weather
location: Paris, France
units: metric
hour-format: 24h

Propriétés disponibles :

  • location : L’emplacement pour lequel afficher la météo (format : “Ville, Pays”)
  • units : Système d’unités (metric pour °C, imperial pour °F)
  • hour-format : Format horaire (12h ou 24h)

Glance prend en charge l’utilisation de variables d’environnement pour sécuriser vos tokens et mots de passe. Utilisez la syntaxe ${ENV_VAR} :

- type: rss
title: ${RSS_TITLE}
feeds:
- url: http://domain.com/rss/${RSS_CATEGORY}.xml

Dans votre docker-compose.yml, définissez les variables :

services:
glance:
image: glanceapp/glance:latest
environment:
- RSS_TITLE=Mes Actualités
- RSS_CATEGORY=tech

Autres méthodes pour gérer les secrets :

  1. Docker Secrets :
token: ${secret:github_token}
  1. Fichier via variable d’environnement :
# Dans docker-compose.yml
environment:
- TOKEN_FILE=/run/secrets/token
# Dans glance.yml
token: ${readFileFromEnv:TOKEN_FILE}

Pour plus de détails sur la configuration avancée, consultez la documentation complète.

Léger, rapide et ultra-personnalisable, Glance est une excellente alternative aux tableaux de bord plus lourds pour centraliser vos informations. Sa faible consommation mémoire en fait un choix idéal pour le self-hosting. La grande force de Glance réside dans la richesse de ses widgets, qui permettent de personnaliser et centraliser toutes vos informations en un seul endroit.