[Tuto] Installation de Umami + PostgreSQL en Docker

EVO

Administreur
Membre du personnel
25 Novembre 2019
8 342
1 608
278
/var/run/docker.sock
Bonjour,
Voici un petit tuto, pour ceux qui souhaiterai installer Umami avec sa base de données PostgreSQL en Docker.

1716581422679.png

Umami, c'est quoi ? :giggle:
Umami est une solution d’analyse de trafic web simple, facile à utiliser, auto-hébergée et respectueuse de vos visiteurs.

Retrouvez plus d'informations sur le site officiel.


Pré-requis :
Avoir Docker et Docker Compose installé sur sa machine, voir [Tuto] Installation de Docker, Docker-compose et Portainer sur Debian 11
Ce connecter en SSH à votre Serveur/NAS, si vous ne savez pas le faire, vous trouverez ici un tuto explicatif : [Tuto] Accéder à son NAS en lignes de commande.
Connaitre le PUID/GUID de l'utilisateur, https://www.forum-nas.fr/threads/tuto-connaitre-le-puid-pgid-dun-utilisateur.13213/

A modifier selon votre installation :
Toute mon installation, va ce faire dans un dossier "umami" inclu dans mon dossier "docker"
Je vais donc installer Umami dans docker/umami


Sommaire :
1/ Créer les dossiers nécessaires
2/ Le fichier "docker-compose.yml"
3/ Création et démarrage du conteneur
4/ Accès à Umami


Aller go :)



1/ Créer les dossiers nécessaires
Sur le NAS nous allons devoir créer un dossier umami contenant un dossier umami-db-data, ce dernier contiendra notre base de données.

En SSH, avec la commande cd nous allons accéder au dossier ou vous souhaitez installer les fichiers de configuration du conteneur. Dans mon cas c'est /home/tuto/docker, j’exécute donc la commande suivante pour accéder au dossier docker :

cd /home/tuto/docker

Vous pouvez aussi créer le dossier umami, contenant un dossier config avec cette commande : mkdir -p umami/umami-db-data

Ensuite, avec la commande cd umami, rendez-vous dans le dossier principal de Umami que nous venons de créer.

Note : A partir de maintenant, toutes les commandes du tutoriel partirons du principe que vous les exécuter depuis le dossier /umami





2/ Le fichier "docker-compose.yml"

Nous allons maintenant créer le fichier docker-compose.yml, c'est lui qui contiendra la configuration de nos conteneurs.

Pour le créer nous exécutons la commande suivante : nano docker-compose.yml

L'éditeur s'ouvre, dedans nous allons copier/coller le code suivant :

YAML:
version: '3'
services:
  umami:
    container_name: umami
    image: ghcr.io/umami-software/umami:postgresql-latest
    ports:
      - "3000:3000"
    environment:
      DATABASE_URL: postgresql://umami:VhdBiAXpRP6tbXES@db:5432/umami
      DATABASE_TYPE: postgresql
      APP_SECRET: 7NNnoV8fqw7MbdBro9FcXc4rGnx92YLm
    depends_on:
      db:
        condition: service_healthy
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "curl http://localhost:3000/api/heartbeat"]
      interval: 5s
      timeout: 5s
      retries: 5

  db:
    container_name: umami_db
    image: postgres:alpine
    user: "1000:100"
    environment:
      POSTGRES_DB: umami
      POSTGRES_USER: umami
      POSTGRES_PASSWORD: VhdBiAXpRP6tbXES
    volumes:
      - ./umami-db-data:/var/lib/postgresql/data
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
      interval: 5s
      timeout: 5s
      retries: 5

Vous devez modifier :
- POSTGRES_PASSWORD, il faut choisir un mot de passe de votre choix ( dans cette exemple le mot de passe est VhdBiAXpRP6tbXES. Remplacer le par le mot de passe de votre choix, puis modifier également cette valeur dans DATABASE_URL, sous la forme postgresql://umami:MOT_DE_PASSE_CHOISI@db:5432/umami.
- APP_SECRET, comme pour le mot de passe, choisissez un hash "aléatoire" a la place de 7NNnoV8fqw7MbdBro9FcXc4rGnx92YLm
- user: "1000:100", 1000 est a remplacer par le PUID de votre utilisateur, 100 est a remplacer par le GUID de votre utilisateur, voir pré-requis au début du tuto

Une fois le fichier correctement rempli, vous pouvez quitter l'éditeur avec Ctrl+X et confirmer les modifications.




3/ Création et démarrage du conteneur
Rappel : Nous sommes toujours en SSH, dans notre dossier umami

Pour créer le conteneur et le démarrer exécuter la commande suivante : docker compose up -d

Note : Les commandes docker doivent s’exécuter avec les droits root

Si la commande vous retourne "done" ou "Running", c'est que le conteneur est bien lancé !




4/ Accès a Umami
L’accès a l'interface ce fera par le port 3000, il faudra donc dans votre navigateur, renseigner http://adresse_ip_du_nas:3000
Exemple, si l'ip locale de votre NAS est 192.168.1.10, alors l'adresse sera http://192.168.1.10:3000

L'user par défaut est : admin et le mot de passe par defaut est : umami

Pensez a changer le mot de passe par défaut dans Settings > Profile > Change password - Paramètres > Profil > Changer le mot de passe

GTxnKfE.png
 
  • J'aime
Réactions: FX Cachem