Mattermost Server installeren op Rocky Linux 8

Mattermost is messaging software die geconfigureerd kan worden om aan de messaging eisen van je organisatie te voldoen.

Het werkt net als berichtensoftware die je eerder gebruikt zult hebben. Gebruikers kunnen inloggen en het berichtenplatform gebruiken om berichten van allerlei aard te sturen, onderling of naar andere gebruikers die ze op hun berichten feed willen abonneren. Het ondersteunt ook groepsberichten, waarbij een gespreksdraad ontstaat tussen meer dan één persoon. Berichten bevatten ook bestandsbijlagen, afbeeldingen, links, enz, om in een organisatie te delen. Bovendien zijn er enkele interessante extra functies die ingeschakeld kunnen worden, zoals videoconferencing indien nodig.

Ontwikkelaars willen deze software gebruiken omdat ze gemakkelijk te configureren is, in je eigen privé cloud gehost kan worden, gratis is, en berichtgeving een belangrijke vereiste is voor de meeste organisaties.

Ben je een Google Apps klant, dan is messaging altijd een beetje een pijnpunt geweest omdat de messaging diensten die ze aanbieden (Google Talk) niet echt werken op mobiele toestellen (laat staan dat ze groeps messaging ondersteunen). Mattermost, daarentegen, werkt zowel op mobiele telefoons als op desktop clients. Je kunt Mattermost zelfs op je eigen hardware of op cloud servers draaien als dat nodig is.

Vereisten

  • Een server waarop Rocky Linux 8 draait met minimaal 2 GB RAM.
  • Een niet-root gebruiker met sudo rechten.

Stap 1. Het systeem bijwerken

Laten we, voor we Mattermost installeren, de software pakketten bijwerken en het systeem upgraden naar het nieuwste.

sudo dnf update

Het updateproces kan even duren, afhankelijk van de snelheid van het Internet en hoe vaak je updates in je systeem toepast.

Stap 2: MySQL server installeren

MySQL is een open-source databasemanagement systeem met veel geavanceerde mogelijkheden dat gebruikt wordt om gegevens in relationeel databaseformaat op te slaan, te beheren en op te vragen. Het wordt het meest gebruikt in database-gestuurde web-applicaties.

Mattermost gebruikt MySQL als achterliggende databank om alle gegevens van gebruikers op te slaan.

Je kunt deze stap overslaan als je MySQL al geïnstalleerd hebt.

Laten we nu eerst MySQL server op je server installeren voor je Mattermost installeert.

sudo dnf install mysql-server -y

Als de installatie voltooid is, start en activeer je de MySQL dienst door het volgende commando uit te voeren.

sudo systemctl start mysqld
sudo systemctl enable mysqld

Controleer de status van de MySQL service door het volgende commando uit te voeren.

sudo systemctl status mysqld

Je zou de volgende uitvoer moeten krijgen.

 Installeren van MySQL Server

Stap 3. Database voor Mattermost maken

Als MySQL geïnstalleerd is, voer je het volgende commando uit om een database voor Mattermost te maken.

Log eerst in op de MySQL shell.

mysql -u root -p

Je wordt gevraagd je wachtwoord in te voeren. Laat het leeg en druk op Enter. Je zou nu een MySQL prompt moeten zien.

Database maken voor Mattermost

Voer nu het volgende commando uit om een Mattermost database aan te maken en een gebruiker met alle rechten op de database.

CREATE DATABASE mattermost_db;
CREATE USER 'mattermost_user'@'localhost' IDENTIFIED BY 'password_of_your_choice ';
GRANT ALL ON mattermost_db. * TO [email protected];
FLUSH PRIVILEGES;

Typ nu \q en druk op Enter om de MySQL prompt te verlaten.

Stap 4. Mattermost installeren

In deze stap downloaden en installeren we de nieuwste versie van Mattermost van zijn officiële website.

Open eerst je web browser en ga naar

https://mattermost.com/download/#

Dit brengt je naar de download pagina voor Mattermost. Kopieer het adres van de link voor de architectuur van je server.

 Mattermost installeren

Als je de URL gekopieerd hebt, voer je het volgende commando uit om Mattermost te installeren.

wget https://releases.mattermost.com/5.39.0/mattermost-5.39.0-linux-amd64.tar.gz

Dit commando downloadt het tar bestand en slaat het op als een bestand met de naam mattermost-5.39.0-linux-amd64.tar.gz

Als het pakket gedownload is, pakken we het tar bestand uit en verplaatsen de uitgepakte bestanden naar de /opt directory.

sudo tar -xf mattermost-*-linux-amd64.tar.gz
sudo mv mattermost /opt

Stap 5. Config.json bestand instellen

Het configuratiebestand van Mattermost is config.json. Dit bestand staat inde mattermost/config directory, en het bevat alle Mattermost configuratie-instellingen.

In deze stap configureren we Mattermost om met MySQL te werken. Als je PostgreSQL gebruikt, kun je deze stap overslaan.

Voer het volgende commando uit om een config.json bestand te maken met de teksteditor nano.

sudo nano /opt/mattermost/config/config.json

Het zal het Mattermost configuratiebestand openen in de nano teksteditor.

Zoek nu de sectie met de naam DriverName en vervang de postgres waarde door mysql waarde, zoals hieronder te zien is.

Config.json bestand instellen

Zoek vervolgens de sectie met de naam DataSource. Zo ziet de oorspronkelijke regel DataSource er uit.

Config.json bestand instellen

Vervang:

  • mmuser: vervang deze waarde door je MySQL database gebruiker die je hierboven maakte.
  • mostest: vervang deze waarde door je MySQL database wachtwoord dat je hierboven aanmaakte.
  • localhost: houd deze waarde zoals ze is als je Mattermost en MySQL op dezelfde server installeerde. Als je Mattermost en de MySQL database op verschillende servers installeerde, moet je deze waarde vervangen door het IP adres van de server waar je MySQL installeerde.
  • mattermost_test: vervang deze waarde door de naam van je databank die je hierboven maakte.

Als je klaar bent, moet de regel DataSource er als volgt uitzien.

Config.json bestand instellen

Druk tenslotte op Ctrl+X en Typ Y, Enter om de veranderingen op te slaan. Je keert nu terug naar je shell.

Stap 6. Aanmaken van Systemd Service voor Mattermost

In deze stap maken we de Mattermost systemd dienst aan.

Systemd is de systeem- en dienstenbeheerder voor Linux. De Mattermost systemd dienst stelt ons in staat de Mattermost dienst te starten, te stoppen en opnieuw te starten. En het belangrijkste is dat het ervoor zorgt dat de Mattermost dienst op de achtergrond op elk moment draait.

Verander eerst de directory in de /etc/systemd/system directory.

cd /etc/systemd/system

Voer dan het volgende commando uit om onder deze directory het Mattermost service bestand aan te maken.

sudo nano mattermost.service

Het zal een lege teksteditor openen met volledige PATH rechten.

Kopieer en plak nu de volgende regel in de teksteditor.

[Unit]
Description=Mattermost
After=syslog.target network.target mysqld.service

[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/spool/mattermost/pid/master.pid
TimeoutStartSec=3600
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

Maak het Mattermost service bestand uitvoerbaar en herlaad het unit bestand door het volgende commando uit te voeren.

sudo chmod 664 /etc/systemd/system/mattermost.service
sudo systemctl daemon-reload

Op dit moment wordt de Mattermost dienst gemonitord door systemd. Je kunt de Mattermost dienst starten, stoppen, inschakelen en uitschakelen met de volgende commando’s.

sudo systemctl start mattermost.service
sudo systemctl stop mattermost.service
sudo systemctl enable mattermost.service
sudo systemctl disable mattermost.service

Om te controleren of de Mattermost dienst goed draait, voer je het volgende commando uit.

sudo systemctl status mattermost.service

Dit is wat je zou moeten zien als de Mattermost dienst met succes draait.

Config.json bestand instellen

Stap 7. De firewall instellen

In deze stap configureren we de firewall voor Mattermost.

Een firewall is een beveiligingssysteem om ongeoorloofde gebruikers de toegang tot privé netwerken te ontzeggen via een interface met een openbaar netwerk. Het schermt al het verkeer af dat je server binnenkomt en uitgaat.In deze stap zullen we de Mattermost dienst toegang verlenen op specifieke netwerkpoorten.

Mattermost luistert standaard op poort nummer 8065. Dit is een niet-standaard poort. We zullen dus poort 8065 inkomend verkeer naar de Mattermost server moeten toestaan.

sudo firewall-cmd --zone=public --add-port=8065/tcp

Herlaad de firewall om de nieuwe regels weer te geven met het volgende commando.

sudo firewall-cmd --reload

Om te controleren of de regel met succes is toegevoegd, gebruik je het volgende commando.

sudo firewall-cmd --zone=public --list-all

Stap 8. Toegang tot de Mattermost Web UI

Nu alles goed ingesteld is, kun je de Mattermost Web UI benaderen door een webbrowser te openen en http://server_ip:8065 in de adresbalk te typen.

Waarbij server_ip het eigenlijke IP adres van je Mattermost server is.

Je komt nu op de volgende pagina. Geef je gebruikersnaam, emailadres en wachtwoord op, en klik op Create Account.

Toegang tot de Mattermost Web UI

Als de authenticatie gedaan is, kom je op het Mattermost dashboard.

Toegang tot de Mattermost Web UI

Toegang tot de Mattermost Web UI

De Mattermost installatie is nu voltooid.

Conclusie

In deze gids heb je geleerd hoe je een Mattermost server kunt opzetten op een Rocky Linux 8.4 systeem.

Heb je vragen, opmerkingen, of feedback, laat het ons gerust weten in de commentaar sectie hieronder.