Sind Sie es leid, ständig auf Slack unter Linux angewiesen zu sein? Wünschen Sie sich eine eigene, teamorientierte Nachrichtenplattform, die Sie auf Ihrem Server betreiben können? Dann ist Mattermost die Lösung! Dieses Open-Source-System stellt eine ausgezeichnete Alternative zu Slack dar und bietet vergleichbare Funktionalitäten.
Vorbereitungen
Dieses Tutorial konzentriert sich auf die Einrichtung der Mattermost-Serversoftware unter Ubuntu Server 18.04 LTS (Long-Term Support). Sollten Sie also einen Linux-Server haben – oder einen Desktop-Rechner, der kontinuierlich in Betrieb sein kann – ist es ratsam, die offizielle Webseite zu besuchen, Ubuntu Server herunterzuladen und zu installieren, bevor wir fortfahren.
Warum gerade Ubuntu Server? Die Wahl fällt auf Ubuntu, weil es eines der am leichtesten einzurichtenden Linux-Serverbetriebssysteme ist. Darüber hinaus garantieren die LTS-Versionen den Nutzern mindestens fünf Jahre Support für ihre Mattermost-Installation.
Hinweis: Wenn Sie die Serverkomponente von Mattermost unter einem anderen Linux-System als Ubuntu Server einrichten möchten, finden Sie Hilfe auf der offiziellen Webseite.
Datenbank einrichten
Mattermost benötigt eine MySQL-Datenbank, die auf dem Ubuntu-Server eingerichtet ist, um ordnungsgemäß zu funktionieren. Zur Installation öffnen Sie ein Terminal und melden sich per SSH auf Ihrem Server an.
Sobald Sie eine funktionierende Terminal-Session haben, installieren Sie MySQL mit dem Apt-Paketmanager, falls Sie dies noch nicht getan haben.
sudo apt install mysql-server
Die Installation von MySQL wird einige Zeit in Anspruch nehmen. Führen Sie anschließend den Befehl zur sicheren Installation aus, um den Vorgang abzuschließen.
sudo mysql_secure_installation
MySQL ist nun auf Ihrem Ubuntu-Server eingerichtet. Der nächste Schritt ist die Anmeldung an der MySQL-Befehlszeile als Root.
Hinweis: Stellen Sie sicher, dass Sie das Root-Passwort verwenden, das Sie während des Sicherheitsinstallationsprozesses festgelegt haben.
sudo mysql
Erstellen Sie einen neuen Benutzer für die SQL-Datenbank. Wir nennen ihn „mmuser“.
create user 'mmuser'@'%' identified by 'mmuser-password';
Erstellen Sie nun die Mattermost-Datenbank in MySQL.
create database mattermost;
Erteilen Sie dem „mmuser“-Konto die Rechte, auf die Mattermost-Datenbank zuzugreifen.
grant all privileges on mattermost.* to 'mmuser'@'%';
Verlassen Sie die MySQL-Befehlszeile, um zur Bash zurückzukehren.
exit
Mattermost-Serversoftware installieren
Die Mattermost-Serversoftware wird auf der offiziellen Webseite bereitgestellt. Sie können diese mit dem Programm „wget“ direkt auf Ihren Server herunterladen. Um die neueste Version der Serversoftware zu erhalten, öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus.
Hinweis: Mattermost bietet verschiedene Versionen an. Wenn Sie eine neuere Version als die hier behandelte benötigen, besuchen Sie die offizielle Download-Seite und ersetzen Sie den untenstehenden Link durch Ihre gewünschte Version.
wget https://releases.mattermost.com/5.5.0/mattermost-5.5.0-linux-amd64.tar.gz
Die Serversoftware wird nun auf Ihren Ubuntu-Server geladen. Extrahieren Sie das Archiv.
tar -xvzf mattermost*.gz sudo mv mattermost /opt sudo mkdir /opt/mattermost/data
Mattermost-Server konfigurieren
Die Serversoftware ist installiert, wird aber erst nach einer korrekten Konfiguration funktionieren. Beginnen wir mit der Erstellung des erforderlichen Benutzers.
sudo useradd --system --user-group mattermost
Geben Sie dem neu erstellten Benutzer „mattermost“ die volle Kontrolle über die Serversoftware.
sudo chown -R mattermost:mattermost /opt/mattermost sudo chmod -R g+w /opt/mattermost
Der Benutzer ist eingerichtet. Nun müssen Sie Mattermost mitteilen, welche Datenbank der Server verwenden soll. Öffnen Sie die folgende Konfigurationsdatei mit Nano im Terminal.
sudo nano /opt/mattermost/config/config.json
Suchen Sie nach folgendem Code innerhalb der Datei:
„Muser:[email protected](dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s“
Löschen Sie diesen Code und ersetzen Sie ihn durch den folgenden Code:
Hinweis: Ersetzen Sie „mmuser-password“ durch Ihr zuvor festgelegtes MySQL-Passwort. Tragen Sie zudem den Hostnamen oder die IP-Adresse Ihres Servers anstelle von „host-name-or-IP“ ein.
„mmuser:
Nach diesen Änderungen starten wir Mattermost, um zu testen, ob alles korrekt konfiguriert ist.
cd /opt/mattermost sudo -u mattermost ./bin/mattermost
Wenn der Server fehlerfrei läuft, beenden Sie den Testlauf mit Strg+C.
Mattermost-Systemdienst erstellen
Damit Mattermost ohne ständige Benutzereingriffe laufen kann, erstellen wir eine systemd-Dienstdatei. Verwenden Sie dazu den „touch“-Befehl, um eine neue Datei anzulegen.
sudo touch /lib/systemd/system/mattermost.service
Öffnen Sie die neu erstellte Dienstdatei mit Nano.
sudo nano /lib/systemd/system/mattermost.service
Fügen Sie den folgenden Code in die Datei ein.
[Unit] Description=Mattermost-Server After=network.target After=mysql.service Requires=mysql.service [Service] Type=notify ExecStart=/opt/mattermost/bin/mattermost TimeoutStartSec=3600 Restart=always RestartSec=10 WorkingDirectory=/opt/mattermost User=mattermost Group=mattermost LimitNOFILE=49152 [Install] WantedBy=mysql.service
Speichern Sie die Änderungen mit Strg+O und beenden Sie Nano mit Strg+X. Laden Sie dann den neu erstellten Mattermost-Systemdienst.
sudo systemctl daemon-reload sudo systemctl start mattermost.service sudo systemctl enable mattermost.service
Auf Mattermost zugreifen
Ihr Mattermost-Server ist nun aktiv. Sie können darauf zugreifen und den Dienst unter folgender URL nutzen:
https://localhost:8065
Alternativ können Sie auch Snap-Pakete verwenden. Installieren Sie dazu Mattermost Desktop mit dem folgenden Befehl:
sudo snap install mattermost-desktop