Git Product home page Git Product logo

matomo-quickstart's Introduction

Matomo + Docker compose

Projet créé comme support pour l'article "L'analytics avec Matomo" de mon blog www.leblogdesam.net.

Ce repository se base sur cet exemple fourni par Matomo.

Explication des modifications

  • Sortie de nginx dans un dossier dédié, pour y placer un Dockerfile spécifique.

Ce dernier se base sur une image nginx classique, dans laquelle on vient d'abord démarrer nginx, ensuite appeler le script certbot.sh qui va installer les certificats SSL, démarrer cron pour le renouvellement de ces derniers, et relancer nginx avec une commande qui va laisse le container tourner correctement en tâche de fond.

Démarrer nginx d'abord et attendre son bon démarrage est indispensable pour que certbot puisse pinger le nom de domaine associé et installer les certificats.

  • Modification du docker-compose en conséquence

Prérequis

Fichier d'env et mots de passe

Un fichier d'env est nécessaire à la racine : db.env

MYSQL_PASSWORD=xxxxx
MYSQL_DATABASE=matomo
MYSQL_USER=matomo
MATOMO_DATABASE_ADAPTER=mysql
MATOMO_DATABASE_TABLES_PREFIX=matomo_
MATOMO_DATABASE_USERNAME=matomo
MATOMO_DATABASE_PASSWORD=
MATOMO_DATABASE_DBNAME=matomo
MARIADB_AUTO_UPGRADE=1
MARIADB_INITDB_SKIP_TZINFO=1

Il faut changer le mot de passe MYSQL (MYSQL_PASSWORD) pour la connexion à la DB.

Ce même mot de passe doit être indiqué à la ligne 11 du docker-compose.yml.

Changement du nom de domaine dans le projet

Je vous invite à remplacer matomo.example.com par l'adresse de votre serveur Matomo partout sur le projet (matomo.conf et certbot.sh dans le dossier nginx) N'oubliez pas l'adresse mail dans certbot.sh, cette adresse sera utilisée pour vous notifier des renouvellements de noms de domaines, vous ne serez pas spammé.

Nom de domaine

Avant de lancer ce projet, il vous faut effectuer une redirection de type A depuis votre nom de domaine ou sous domaine vers le serveur qui héberge ce projet.

Si vous le ne faites pas, certbot tombera simplement en erreur, car il sera incapable de "pinger" le serveur pour lui déclarer des certificats.

Lancement du projet

Une fois les prérequis réglés, vous pouvez démarrer le projet avec la commande docker compose up à la racine du projet. Si tout se passe bien, votre serveur Matomo devrait être accessible sur le domaine que vous avez configuré.

Il peut être nécessaire de donner des droits d'accès supérieurs au fichier certbot.sh afin que Docker puisse l'exécuter dans le container.

Il est possible qu'il faille stopper et relancer le docker compose up la première fois si le démarrage de Matomo ne s'est pas déroulé assez vite pour certbot (peut arriver sur un tout petit serveur / VPS).

Si rien ne plante et que le certificat SSL est bien en place, vous pouvez fermer l'instance (Ctrl+C) et la relancer en daemon via docker compose up -d.

Votre serveur Matomo est prêt. 🎉

matomo-quickstart's People

Contributors

tisamu avatar

Stargazers

Justin avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.