[Tuto] Installation de Dashy en Docker via docker-compose
Bonjour,
Un nouveau petit tuto pour vous apprendre à installer Dashy en docker-compose.
Dashy c'est quoi ?
Dashy est un tableau bord de services Web autohébergés ou non. Sur une page, vous centralisez tous vos services Web préférés comme par exemple : OPNsense, WireGuard, DuckDNS, Pi-Hole, Grafana, Transmission, NextCloud, Home Assistant, Plex… mais aussi des liens/raccourcis de vos sites préférés.
Voici un aperçu en image :
Des sites de démonstration sont également disponible : Démo 1 - Démo 2 - Démo 3
Plus d'info sur Cachem ou sur le GitHub officiel.
Sommaire :
1/ Création des dossiers
2/ Création du fichier de configuration
3/ Création du docker-compose
4/ Création du réseau bridge
5/ Création du conteneur
6/ Accès à Dashy
C'est parti !

1/ Création des dossiers
Je vais installer Dashy dans mon dossier docker, qui se situe sur /srv/disk1, je vais donc créer dans le dossier docker, un dossier dashy avec la commande suivante :
Code:
sudo mkdir -p /srv/disk1/docker/dashy
2/ Création du fichier de configuration
Maintenant, je vais dans mon dossier Dashy :
Code:
cd /srv/disk1/docker/dashy
Je crée mon fichier de configuration, c'est lui qui va contenir l'organisation des services sur le Dashboard. Pour crée ce fichier conf.yml, j'execute la commande suivante :
Code:
sudo nano conf.yml
Puis, je place ce contenu :
Code:
---
pageInfo:
title: Dashy
navLinks:
- title: Home
path: /
- title: About
path: /about
- title: Source Code
path: https://github.com/Lissy93/dashy
appConfig:
theme: colorful
fontAwesomeKey: 0821c65656
enableFontAwesome: true
layout: "auto"
iconSize: "medium"
sections:
- name: Getting Started
items:
- title: Source
description: Source code and documentation on GitHub
icon: fab fa-github
url: https://github.com/Lissy93/dashy
- title: Issues
description: View currently open issues, or raise a new one
icon: fas fa-bug
url: https://github.com/Lissy93/dashy/issues
- title: Demo 1
description: 'Live Demo #1'
icon: far fa-rocket
url: https://dashy-demo-1.netlify.app
- title: Demo 2
description: 'Live Demo #2'
icon: fad fa-planet-ringed
url: https://dashy-demo-2.netlify.app
Je quitte le fichier (Ctrl + X) et je valide avec Y + Enter.
Ce fichier contient l'organisation de votre Dashboard, c'est lui qu'il faudra modifier pour rajouter des services sur votre Dashboard. Il sera également possible de le modifier en ligne depuis l'interface mais attention, les modifications faite en ligne depuis l'interface Web ne s'enregistre pour le moment pas dans ce fichier de configuration, donc dans le cas de re-création du conteneur les modification faite peuveut êtres perdu si vous n'avez pas sauvegardé votre configuration !
3/ Création du docker-compose
Maintenant, toujours dans mon dossier Dashy :
Code:
cd /srv/disk1/docker/dashy
Je crée un fichier docker-compose.yml :
Code:
sudo nano docker-compose.yml
Avec le contenu suivant :
Code:
version: "3.8"
services:
dashy:
image: lissy93/dashy
container_name: Dashy
volumes:
- /srv/disk1/docker/dashy/conf.yml:/app/public/conf.yml
ports:
- 4000:80
environment:
- NODE_ENV=production
- UID=1000
- GID=1000
restart: unless-stopped
healthcheck:
test: ['CMD', 'node', '/app/services/healthcheck']
interval: 1m30s
timeout: 10s
retries: 3
start_period: 40s
networks:
dashy-network:
external:
name: dashy-network
Ici, plusieurs choses sont a adapter suivant votre installation :
- UID et GIDsont à modifier suivant les ID de votre utilisateur*
* Pour connaitre le PUID/GUID de l'utilisateur : [Tuto] Connaitre le PUID / PGID d'un utilisateur.
- Sur la ligne "/srv/disk1/docker/dashy/conf.yml:/app/public/conf.yml", /srv/disk1/docker/dashy/conf.yml doit correspondre avec le dossier crée a l'étape 1 du tuto et le fichier de configuration crée a l'étape 2. Ce dossier contient l'organisation de votre Dashboard.
4/ Création du réseau bridge
Dans le compose je place le conteneur Dashy sur un réseau bridge "dashy-network", il faut le crée, pour cela on lance la commande suivante :
Code:
sudo docker network create dashy-network
5/ Création du conteneur
Maintenant, toujours dans mon dossier Dashy :
Code:
cd /srv/disk1/docker/dashy
on execute la commande :
Code:
sudo docker-compose up -d
Une fois fini, la commande renvoi "done", alors le conteneur est bien créé !
6/ Accès à Dashy
Rendez-vous à l'url de votre machine + le port 4000 pour afficher la page de connexion.
Par exemple si l'ip de votre machine est 192.168.1.10 alors l'adresse de Dashy sera : http://192.168.1.10:4000

Cette page s'affiche, Dashy est alors en train de charger la configuration présente dans le fichier conf.yml, cette étape, qui ne se faire qu'au 1er chargement, peut durer quelques secondes !

2021-06-23 - Ajout de enableFontAwesome: true dans conf.yml pour l'affichage correct des icones.
2021-06-21 - Rajout de la variable NODE_ENV=production pour que le tuto soit à jour avec la derniere version de Dashy
2021-06-17 - Création du tuto