Mattermost est une alternative open source auto-hébergée au service de messagerie Slack SAAS. En d'autres termes, avec Mattermost, vous pouvez configurer un serveur de messagerie privé et dédié sur votre propre machine pour votre équipe.
Conditions préalables
- Une instance de serveur Ubuntu 16.04 nouvellement créée. Supposons que son adresse IP soit
203.0.113.1
.
- Un utilisateur sudo .
- L'instance de serveur a été mise à jour vers le dernier état stable à l'aide du référentiel EPEL YUM .
- Un domaine
mattermost.example.com
qui a été configuré pour pointer vers l' 203.0.113.1
instance de serveur. Vous pouvez en savoir plus sur ce sujet dans un autre tutoriel Vultr .
- Afin d'obtenir automatiquement le certificat Let's Encrypt, le nom de domaine complet de l'instance de serveur doit avoir été configuré en tant que
mattermost.example.com
.
Utilisez les commandes suivantes pour mettre à jour vos packages.
sudo apt update
sudo apt upgrade
Comme requis par Mattermost, vous devez configurer une base de données pour stocker toutes les données pour Mattermost. Pour cela, nous installerons MySQL.
Utilisez la commande suivante pour installer MySQL Server.
sudo apt install mysql-server
Il vous demandera de choisir un mot de passe pour le compte racine MySQL,
Ensuite, connectez-vous à MySQL en tant que root.
mysql -u root -p
Créez l'utilisateur le plus important mmuser
.
mysql> create user 'mmuser'@'%' identified by 'mmuser-password';
Remarque: remplacez le mot mmuser-password
de passe par quelque chose de plus sécurisé.
Créez la base de données Mattermost.
mysql> create database mattermost;
Accordez des privilèges d'accès à l'utilisateur mmuser
.
mysql> grant all privileges on mattermost.* to 'mmuser'@'%';
Enfin, déconnectez-vous de MySQL.
mysql> exit
Téléchargez et extrayez l'archive Mattermost 5.2.
cd
wget https://releases.mattermost.com/5.2.0/mattermost-5.2.0-linux-amd64.tar.gz
tar -zxvf mattermost-5.2.0-linux-amd64.tar.gz
Déplacez tous les fichiers Mattermost vers le /opt
répertoire, puis créez un sous-répertoire /opt/mattermost/data
pour stocker les données du programme.
sudo mv mattermost /opt
sudo mkdir /opt/mattermost/data
Créez un utilisateur dédié mattermost
et un groupe dédié mattermost
pour exécuter Mattermost.
sudo useradd --system --user-group mattermost
Définissez l'utilisateur et le groupe en mattermost
tant que propriétaire des fichiers Mattermost.
sudo chown -R mattermost:mattermost /opt/mattermost
Donnez des autorisations d'écriture au mattermost
groupe.
sudo chmod -R g+w /opt/mattermost
Configurez le pilote de base de données dans le fichier /opt/mattermost/config/config.json
. Ouvrez le fichier.
nano /opt/mattermost/config/config.json
Trouvez ces lignes.
"SiteURL": "",
"ListenAddress": ":8065",
"DataSource": "mmuser:mostest@tcp(dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Remplacez-les par les lignes ci-dessous.
"SiteURL": "http://mattermost.example.com",
"ListenAddress": ":80",
"DataSource": "mmuser:<mmuser-password>@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Assurez-vous que DriverName
est défini sur mysql
puis définissez DataSource
sur la valeur suivante, en la remplaçant <mmuser-password>
par la valeur appropriée. Assurez-vous également que le nom de la base de données est mattermost
au lieu de mattermost_test
:
Quittez ensuite en appuyant sur CTRL+ Xpuis sur Ypour enregistrer.
Autorisez Mattermost à se lier à des ports privilégiés, par exemple, 80
et 443
.
cd /opt/mattermost/bin
sudo setcap cap_net_bind_service=+ep ./platform
sudo setcap cap_net_bind_service=+ep ./mattermost
Créez le systemd
fichier d'unité Mattermost et ouvrez-le en utilisant nano comme root.
nano /etc/systemd/system/mattermost.service
Remplissez-le avec les éléments suivants.
[Unit]
Description=Mattermost
After=syslog.target network.target mysqld.service
[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid
LimitNOFILE=49152
[Install]
WantedBy=multi-user.target
Modifiez les autorisations sur ce systemd
fichier d'unité.
sudo chmod 664 /etc/systemd/system/mattermost.service
Démarrez le service Mattermost et faites-le démarrer automatiquement au démarrage du système.
sudo systemctl daemon-reload
sudo systemctl start mattermost.service
sudo systemctl enable mattermost.service
Enfin, pointez votre navigateur Web préféré sur http://mattermost.example.com
ou https://mattermost.example.com
, et vous verrez la Mattermost Sign Up
page.
Sur la Mattermost Sign Up
page, saisissez an email address
, a username
et a password
, puis cliquez sur le Create Account
bouton pour enregistrer le premier utilisateur.
Remarque: sachez que le premier utilisateur que vous enregistrez sera également l'administrateur système.
Sur la Team Name
page et la Team URL
page, saisissez a team name
et a URL
pour votre première équipe.
Vous avez maintenant configuré avec succès un serveur de messagerie Mattermost qui est suffisamment robuste pour servir une petite ou moyenne équipe dans un environnement de production. N'hésitez pas à explorer l'interface de Mattermost et à inviter plus de membres de l'équipe.