Installer Mattermost avec Docker
Mattermost

Installer Mattermost avec Docker

Table des matières

Mattermost est une plateforme plutôt sympa si vous êtes une équipe qui cherchez un moyen de communiquer par messagerie instantanée. Que ce soit sur des projets professionnels ou personnels.

Créez des salons suivant vos envies, partagez vos fichiers, inviter d'autres personnes à vous rejoindre, passer des appels,...

Vous devrez relier votre domaine à Mattermost. Enfin, sauf si vous voulez l'utiliser qu'en local.

Une chose aussi que je voudrais préciser avant qu'on commence ce tutoriel, il vous faudra soit Cosmos Cloud ou Nginx Proxy Manager, par exemple, pour le serveur proxy.

Personnellement j'utilise Cosmos Cloud car il offre vraiment énormément de possibilités comparé à Nginx Proxy Manager, mais encore une fois, ce n'est que mon avis.

Mon avis ne fera jamais office de vérité mais simplement d'expérience. Elle peut évidemment varier d'une personne à l'autre.

Si vous avez la moindre difficulté, n'oubliez pas que vous pouvez rejoindre belginux sur Discord et Matrix!


Mattermost est un logiciel et un service de messagerie instantanée libre auto-hébergeable. Il est conçu comme un chat interne pour les organisations et les entreprises, ainsi qu'un logiciel de gestion de projets,

⚡Caractéristiques

  • Messagerie instantanée : La messagerie instantanée est l’une des fonctionnalités les plus basiques de Mattermost. Elle permet aux utilisateurs de s’envoyer des messages instantanés individuellement ou en groupe, pour des discussions rapides et efficaces. La messagerie instantanée permet une collaboration efficace en offrant un moyen pratique et direct de communiquer en temps réel.
  • Canal de discussion : Les canaux de discussion sont des espaces organisés où les équipes peuvent collaborer et échanger des idées sur des sujets spécifiques. Les équipes peuvent créer des canaux thématiques pour organiser les conversations par exemple par projet ou sujet, ce qui permet de maintenir une communication claire et ciblée. Les canaux peuvent être publics, accessibles à tous les membres de l'équipe, ou privés, restreints à un groupe spécifique d'utilisateurs, garantissant ainsi la confidentialité lorsque cela est nécessaire.
  • Intégrations : Mattermost offre une large gamme d'intégrations avec d'autres outils et services utilisés par les équipes. Ces intégrations permettent aux équipes d'automatiser les flux de travail, de centraliser leurs communications et d'améliorer la productivité. Par exemple, des intégrations avec des outils de gestion de projet, des systèmes de suivi des problèmes ou des services de stockage cloud permettent aux utilisateurs de partager des informations et de collaborer de manière transparente sans avoir à jongler entre différentes applications.
  • Personnalisation et Extensibilité : Les équipes peuvent personnaliser l'interface de Mattermost pour répondre à leurs besoins spécifiques. Des intégrations tierces, des plugins et des fonctionnalités personnalisées peuvent être ajoutés pour optimiser l'expérience utilisateur.
  • Gestion des notifications : La gestion des notifications est essentielle afin de maintenir une communication efficace dans une équipe ou une entreprise. Il est en effet important d'être alerté correctement pour les informations importantes sans pour autant être noyé dans un flot constant de notifications. Mattermost permet aux utilisateurs de personnaliser leurs paramètres de notification en fonction de leurs préférences individuelles. Les utilisateurs peuvent personnaliser la gestion des notifications en définissant des règles spécifiques pour les canaux, les conversations ou les mots-clés qui déclenchent des notifications.
  • Open Source et Auto-Hébergement : L'un des principaux avantages de Mattermost est sa nature open source, offrant aux entreprises la liberté de personnaliser et d'adapter la plateforme selon leurs besoins spécifiques. De plus, la possibilité d'héberger Mattermost sur site donne aux entreprises un contrôle total sur leurs données sensibles. De plus, cela renforce la confiance des utilisateurs envers la plateforme.
  • Sécurité : Mattermost intègre des fonctionnalités de sécurité avancées, telles que le chiffrement de bout en bout, garantissant la confidentialité des échanges. Les entreprises opérant dans des secteurs réglementés peuvent ainsi utiliser Mattermost en toute confiance.

L'installation

  1. Rendez-vous à la racine du dossier où vous installez vos applications et cloner le dépôt:
sudo git clone https://github.com/mattermost/docker
  1. Cela va créer un dossier nommé docker, on va renommer docker en mattermost, histoire que ce soit un peu plus identifiable:
sudo mv docker mattermost
  1. On va se rendre dans le dossier Mattermost:
cd mattermost
  1. On va créer une copie du fichier .env:
sudo cp env.example .env
  1. Que l'on va éditer:
sudo nano .env
  1. Au minimum veillez à indiquez votre domaine à côté de DOMAIN=, ce qui donne:
  1. Maintenant on va créer les dossiers nécessaires:
sudo mkdir -p /srv/appdata/mattermost/{config,data,logs,plugins,client/plugins,bleve-indexes}
  1. Donnons les droits exigés par la documentation de Mattermost:
sudo chown -R 2000:2000 /srv/appdata/mattermost

On va déployer le container:

sudo docker compose -f docker-compose.yml -f docker-compose.without-nginx.yml up -d

Alors il y a un petit souci récurrent que j'ai constaté lors de mes tests et que l'on peut retrouver à maintes reprises sur internet, vous risquez d'avoir ce type d'erreur, et c'est même plus que probable:

can't create '/mattermost/config/config.json': Permission denied

Pour résoudre cela, c'est très simple, refaites cette commande:

sudo chown -R 2000:2000 /srv/appdata/mattermost

Et redémarrez Mattermost. Tout va rentrer dans l'ordre et vous pourrez poursuivre:

docker restart mattermost-mattermost-1 mattermost-postgres-1

Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8065 par défaut:

http://ip:8065/

Ou votre domaine:

https://votredomaine.com

Création du compte admin & fin de l'installation

Remplissez les informations demandées et cliquez sur Create Account:

Nommez votre organisation:

Vous pouvez Skip pour le moment:

Cliquez sur Finish setup:

Ici vous faites comme vous voulez, mais perso j'ai choisi l'option No thanks, I'll figure it out myself:

Vous voici sur la page principale de Mattermost!


Activer le mode sombre

Rendez-vous en haut à droite sur la roue crantée:

Choisissez dans le menu de gauche Display et ensuite Theme dans la colonne de droite, cliquez sur Edit:

Sélectionnez le thème souhaite, dans mon cas Indigo:

Cliquez sur Save pour... Sauver!


Changez la langue

Rendez-vous en haut à droite sur la roue crantée:

De nouveau, colonne de gauche, choisissez l'option Display et dans le fond de la colonne de droite, Language, cliquez sur Edit:

Choisissez le français, par exemple, et cliquez sur Save:

Et voilà le résultat, mode sombre activé & en français:


Configurer le serveur mail

Rendez-vous en haut à gauche, cliquez le carré....rempli de carrés, sélectionnez Console système:

Maintenant rendez-vous dans Environnement, SMTP:

Vous arrivez donc ici:

Je vous montre un exemple avec Gmail mais libre à vous d'utiliser votre propre serveur mail si vous en avez un. Je n'incite absolument pas à l'utilisation de Gmail, mais pour ceux qui ont leur serveur, je présume qu'ils savent comment configurer la suite.

Pour commencer, rendez-vous ici sur le lien ci-dessous pour mettre en place la double authentification sur Gmail afin d'avoir un mot de passe dédié pour les applications tierces.

En effet votre vrai mot de passe de votre compte Gmail ne peut plus être utilisé dans le cadre d'une utilisation avec une application tierce. Donc, suivez la procédure décrite ci-dessous jusqu'à l’obtention de votre mot passe:

Configurer le SMTP pour envoyer un mail avec une application Docker
Tutoriel pour configurer le SMTP afin d’envoyer un mail à partir de vos applications self-hosted.

Une fois que vous avez votre mot de passe dédié, remplissez les informations demandées:

  • Serveur SMTP: smtp.gmail.com

  • Port du serveur SMTP: 465

  • Activer l'authentification SMTP: oui

  • Nom d'utilisateur du serveur SMTP: votre adresse Gmail complète

  • Mot de passe du serveur SMTP: le mot de passe que vous avez créé pour l'application

  • Connexion sécurisée: TLS (Recommandé)

Quand c'est rempli correctement, cliquez sur Enregistrer:

Et maintenant, testons si ça fonctionne en cliquant sur Tester la connexion:

Ce qui doit vous retourner ceci:

Bravo, ça fonctionne!


Inviter un utilisateur à vous rejoindre

En haut à gauche, cliquez sur le nom de votre organisation et ensuite sur Inviter des utilisateurs:

Soit vous copiez le lien directement, que vous partagez à la personne que vous voulez inviter ou vous pouvez l'envoyer par mal:


zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.