Installer Matomo sur Docker avec Docker Compose
Mis à jour : vendredi 10 novembre 2023
Installer Docker
Avant de commencer, il est nécessaire d’installer Docker sur votre ordinateur s’il n’est pas déjà installé.
Pour vérifier la présence de Docker sur votre système, tapez la commande docker -v
dans un terminal.
Si la commande est introuvable, alors vous n’avez pas Docker et vous devez l’installer.
L’installation de Docker va dépendre du système d’exploitation sur lequel vous travaillez.
Créer le fichier docker-compose.yml
Le fichier docker-compose.yml
comprend toutes les informations nécessaires pour permettre à Docker de télécharger les éléments indispensables au fonctionnement de Matomo comme :
- un serveur web (apache2)
- une base de données SQL (mariadb)
- un langage de programmation (php)
Créez ce fichier dans un répertoire matomo
sur votre système.
mkdir matomo
touch matomo/docker-compose.yml
Ensuite ajoutez la configuration suivante dans votre fichier docker-compose.yml
.
version: "3"
services:
db:
image: mariadb:10.11
command: --max-allowed-packet=64MB
restart: always
volumes:
- db:/var/lib/mysql:Z
environment:
- MYSQL_ROOT_PASSWORD=password123*
- MARIADB_AUTO_UPGRADE=1
- MARIADB_DISABLE_UPGRADE_BACKUP=1
app:
image: matomo
restart: always
volumes:
- matomo:/var/www/html:z
environment:
- MATOMO_DATABASE_HOST=db
ports:
- 8080:80
volumes:
db:
matomo:
Ensuite, pour démarrer Matomo, vous devez exécuter la commande docker compose up
.
Docker va donc télécharger tous les fichiers nécessaires pour faire tourner Matomo et ensuite démarrer l’application.
Après quelques minutes, vous pouvez accéder à Matomo à l’adresse http://localhost:8080.
Processus d’installation de Matomo
Connexion à la base de données
Dans le fichier docker-compose.yml
ci-dessus, il y a une variable d’environnement qui se nomme MYSQL_ROOT_PASSWORD
. Cette variable contient le mot de passe de connexion à la base de données (ici password123*
).
Voici les informations de connexion que je rentre dans Matomo pour qu’il se connecte à la base de données :
- Serveur de base de données : en temps normal l’adresse IP du serveur de la base de données. Étant donné qu’on utilise Docker ici, on rentre le nom du service qui correspond à la base de données (voir
services: db:
dansdocker-compose.yml
). - Nom d’utilisateur : nous n’avons pas précisé de nom d’utilisateur dans le Docker Compose donc ce sera
root
. - Mot de passe : valeur de la variable d’environnement
MYSQL_ROOT_PASSWORD
. - Nom de la base : ici vous mettez ce que vous voulez comme nom de base de données
- Préfixe des tables : ce par quoi seront préfixés vos tables dans la base de données
- Adaptateur : PDO\MYSQL
Cliquez sur Suivant et ensuite vous devriez voir ce message de confirmation :
Configuration du compte et du site web
Ensuite, vous devez créer un compte Super Utilisateur avec :
- un identifiant
- un mot de passe
- une adresse email
Puis, paramétrez votre site web avec :
- nom du site
- URL du site
- fuseau horaire
- est-ce que c’est un site e-commerce
A la fin du processus d’installation, vous êtes invité à installer le code de suivi sur votre site web.
Se connecter à Matomo
Lorsque vous essayez de vous connecter à Matomo, vous verrez ce message d’erreur si vous avez utilisé le même docker-compose.yml
que moi.
C’est une sécurité qui bloque l’accès si vous n’êtes pas sur le port 80
. Ici on se connecte avec le port 8080
donc on doit modifier le fichier de configuration dans Matomo dans Docker.
Modifier la configuration de Matomo dans Docker
Pour accéder au conteneur Docker dans lequel se trouve matomo vous devez connaître l’identifiant du conteneur en question. Pour cela, exécutez la commande docker ps
.
Dans mon cas, l’identifiant du conteneur Matomo est 670e5185880a
.
Je vais maintenant exécuter un terminal dans ce conteneur pour modifier le fichier de configuration de Matomo avec la commande suivante.
docker exec -it 670e5185880a /bin/bash
Maintenant que je suis dans le conteneur Matomo, je peux modifier le fichier de configuration config.ini.php
.
Pour cela, je vais avoir besoin d’un éditeur de texte, je vais donc installer nano
avec la commande apt update && apt install nano
.
Tapez ensuite nano config/config.ini.php
, puis changez la ligne trusted_hosts[] = "localhost"
en trusted_hosts[] = "localhost:8080"
. Tapez sur Ctrl-X
pour fermer, puis tapez Entrer
pour enregistrer.
Rechargez ensuite votre page de connexion Matomo.
Vous arrivez sur le formulaire de connexion.
Félicitations, vous avez installé Matomo avec Docker.
Vous n'avez pas trouvé de solution ?
Demandez de l'aide au Data Marketing Club