[Tuto] Installation de Scrutiny en Docker via docker-compose

EVOTk

Modérateur
Membre du personnel
[Tuto] Installation de Scrutiny en Docker via docker-compose


Bonjour,
Un nouveau petit tuto pour vous apprendre à installer Scrutiny en docker-compose.

Scrutiny c'est quoi ?
Scrutiny est une solution de tableau de bord et de surveillance de la santé du disque dur, fusionnant les métriques S.M.A.R.T fournies par le fabricant avec des taux d'échec réels de Backblaze.

scrutiny-logo-dark.png


Aperçu en image ici : https://imgur.com/a/5k8qMzS

Sommaire :
1/ Création des dossiers
2/ Création du docker-compose
3/ Création du réseau bridge
4/ Création du conteneur
5/ Accès à Scrutiny

1/ Création des dossiers
Je vais installer Scrutiny dans mon dossier docker, qui se situe sur /srv/disk1, je vais donc créer le
Code:
sudo mkdir -p /srv/disk1/docker/scrutiny/config

3/ Création du docker-compose
Maintenant, je vais dans mon dossier Scrutiny :
Code:
cd /srv/disk1/docker/scrutiny

Et je crée un fichier docker-compose.yml :
Code:
sudo nano docker-compose.yml

Avec le contenu suivant :
Code:
version: "2.1"
services:
  scrutiny:
    image: ghcr.io/linuxserver/scrutiny
    container_name: scrutiny
    networks:
      - scrutiny-network
    cap_add:
      - SYS_RAWIO
      - SYS_ADMIN
    environment:
      - PUID=1000
      - PGID=100
      - TZ=Europe/Paris
      - SCRUTINY_API_ENDPOINT=http://localhost:8080
      - SCRUTINY_WEB=true
      - SCRUTINY_COLLECTOR=true
    volumes:
      - /srv/disk1/docker/scrutiny/config:/config
      - /run/udev:/run/udev:ro
    ports:
      - 8080:8080
    devices:
      - /dev/sda:/dev/sda
      - /dev/sdb:/dev/sdb
    restart: unless-stopped

networks:
  scrutiny-network:
    external:
      name: scrutiny-network

Ici, plusieurs choses sont a adapter suivant votre installation :
- PUID et GUID sont à 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/scrutiny/config:/config", /srv/disk1/docker/scrutiny/config doit correspondre avec le dossier crée a l'étape 1 du tuto. Ce dossier va contenir les fichiers nécessaires au bon fonctionnement du conteneur ( base de données, .. )

- "/dev/sda:/dev/sda", correspond à votre 1er disque, "/dev/sdb:/dev/sdb" au second, ...
Il vous faut rajouter autant de ligne, que vous avez de disque a faire surveiller a scrutiny.
Il est également possible de lui faire surveiller des disques NVMe**, la ligne sera sous la forme : /dev/nvme1n1:/dev/nvme1n1
**Dans le compose, on peu voir le conteneur demande les droits "SYS_ADMIN", c'est justement pour pouvoir surveiller les disques NVMe, si vous n'avez pas de disques NVMe, cette permissions n'est pas obligatoire.

Info : Il est possible d’exécuter la commande suivante pour lister les disques :
Code:
smartctl --scan


3/ Création du réseau bridge
Dans le compose je place le conteneur scrutiny sur un réseau bridge "scrutiny-network", il faut le crée, pour cela on lance la commande suivante :
Code:
sudo docker network create scrutiny-network


4/ Création du conteneur
Maintenant que tous en prêt, nous allons lancer la création du conteneur.
Pour cela, toujours dans notre dossier "scrutiny", nous exécutons la commande suivante :
Code:
sudo docker-compose up -d

5/ Accès à Scrutiny
Rendez-vous a l'url de votre machine + le port 8080 pour afficher le dashboard.
Exemple : http://192.168.1.10:8080
Celui-ci va vous inviter a lancer manuellement* le 1er scan avec la commande suivante : scrutiny-collector-metrics run
Cette commande est a exécuter dans le conteneur, de cette façon :
Code:
sudo docker exec scrutiny scrutiny-collector-metrics run

*Dans le cas ou vous n'executez pas cette commande il faudra attendre environ minuit pour que le 1er scan automatique ce lance.

Apres l'execution de la commande, actualisé votre dashboard, et admirer le résultat :giggle:
 
Haut