Skip to content

Homepage - Dashboard Centralisé

Dashboard moderne regroupant accès rapides à tous services du homelab.

Informations

Paramètre Valeur
Container LXC 101 - management
IP:Port 192.168.1.12:3000
Image ghcr.io/gethomepage/homepage:latest
Version 0.9.10

Configuration Docker

services:
  homepage:
    container_name: homepage
    image: ghcr.io/gethomepage/homepage:latest
    ports:
      - "3000:3000"
    volumes:
      - /root/homepage/config:/app/config
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      - TZ=Europe/Paris
    restart: unless-stopped

Structure Configuration

/root/homepage/config/
├── services.yaml      # Services organisés par groupes
├── widgets.yaml       # Widgets dashboard (météo, date, etc.)
├── bookmarks.yaml     # Liens rapides
├── docker.yaml        # Integration Docker stats
└── settings.yaml      # Paramètres généraux

services.yaml

Organisation services par LXC container :

- Média (LXC 100):
    - Jellyfin:
        href: http://192.168.1.11:8096
        description: Streaming média
        icon: jellyfin.svg

    - Sonarr:
        href: http://192.168.1.11:8989
        description: Séries TV
        icon: sonarr.svg
        widget:
          type: sonarr
          url: http://192.168.1.11:8989
          key: { { SONARR_API_KEY } }

    - Radarr:
        href: http://192.168.1.11:7878
        description: Films
        icon: radarr.svg
        widget:
          type: radarr
          url: http://192.168.1.11:7878
          key: { { RADARR_API_KEY } }

- Management (LXC 101):
    - Portainer:
        href: http://192.168.1.12:9000
        description: Docker UI
        icon: portainer.svg

    - Documentation:
        href: http://192.168.1.12:8001
        description: MkDocs homelab
        icon: book.svg

- Infrastructure:
    - Proxmox:
        href: https://192.168.1.21:8006
        description: Hyperviseur
        icon: proxmox.svg

    - PBS:
        href: https://192.168.1.13:8007
        description: Backups
        icon: proxmox.svg

widgets.yaml

Widgets informationnels :

- datetime:
    format:
      dateStyle: long
      timeStyle: short
      hour12: false

- search:
    provider: google

- resources:
    cpu: true
    memory: true
    disk: /

- greeting:
    text: Homelab Dashboard

bookmarks.yaml

Liens externes utiles :

- Utilitaires:
    - GitHub:
        - abbr: GH
          href: https://github.com
    - Reddit Homelab:
        - abbr: r/HL
          href: https://reddit.com/r/homelab

- Guides:
    - TRaSH Guides:
        - abbr: TG
          href: https://trash-guides.info
    - Proxmox Docs:
        - abbr: PVE
          href: https://pve.proxmox.com/wiki/

docker.yaml

Stats containers Docker :

socket: /var/run/docker.sock

Widgets automatiques :

  • CPU/RAM usage par container
  • Network I/O
  • Status (running/stopped)

settings.yaml

title: Homelab Dashboard
favicon: /icons/home.svg
theme: dark
color: slate

layout:
  Média (LXC 100):
    style: row
    columns: 3
  Management (LXC 101):
    style: row
    columns: 2
  Infrastructure:
    style: row
    columns: 2

hideErrors: true
showStats: true

Widgets Intégrations

Sonarr/Radarr Widget

Affiche :

  • Queue downloads
  • Séries/Films manquants
  • Activité récente

Configuration :

widget:
  type: sonarr # ou radarr
  url: http://192.168.1.11:8989
  key: API_KEY_HERE

SABnzbd Widget

Affiche :

  • Download speed
  • Queue size
  • Time remaining
widget:
  type: sabnzbd
  url: http://192.168.1.11:8080
  key: API_KEY_HERE

Proxmox Widget

Affiche :

  • CPU usage host
  • Memory usage
  • VMs/LXC status
widget:
  type: proxmox
  url: https://192.168.1.21:8006
  username: api-user@pve
  password: API_TOKEN

Customization

Thèmes

settings.yaml :

theme: dark # ou light
color: slate # slate, gray, zinc, neutral, stone, red, orange, amber, etc.

Icons Custom

# Ajouter icons dans
/root/homepage/config/icons/

# Référencer
icon: /icons/custom-icon.svg

CSS Custom

# settings.yaml
customCSS: |
  .card {
    border-radius: 10px;
  }

Mise à Jour

# Sur LXC 101
cd /root
docker compose pull homepage
docker compose up -d homepage

# Vérifier
docker logs homepage

Troubleshooting

Page Blanche

# Vérifier logs
docker logs homepage

# Permissions config files
ls -la /root/homepage/config/
chmod 644 /root/homepage/config/*.yaml

Widgets Ne Fonctionnent Pas

Vérifier API Keys :

# Test Sonarr API
curl http://192.168.1.11:8989/api/v3/system/status \
  -H "X-Api-Key: YOUR_KEY"

# Si erreur → regenerate API key

Docker Stats Non Affichés

# Vérifier socket permission
ls -la /var/run/docker.sock

# Doit être accessible par container
docker exec homepage ls -la /var/run/docker.sock

Alternatives

  • Heimdall : Plus simple, moins features
  • Organizr : Focus proxy tabs
  • Homarr : Similar, plus customization
  • Dashy : Plus configurable mais complexe

Ressources