GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Mattermost unter CentOS 8 installieren – Eine Schritt-für-Schritt-Anleitung?

Mattermost ist eine private Open-Source-Cloud-Slack-Alternative. Ein Arbeitsplatz-Messaging-System für Web, PCs und Telefone, veröffentlicht unter der MIT-Lizenz. Als Alternative zu proprietärem SaaS-Messaging bringt Mattermost Ihre gesamte Teamkommunikation an einen Ort und macht sie überall durchsuchbar und zugänglich. Mattermost ist „Slack-kompatibel, nicht Slack-beschränkt“ und unterstützt eine Obermenge der eingehenden und ausgehenden Webhook-Integrationen von Slack, einschließlich der Kompatibilität mit bestehenden Slack-Integrationen. Aus Ihren bestehenden Slack-Teams können Sie Benutzer, den Verlauf öffentlicher Kanäle und sogar Farbeinstellungen für Themen in Mattermost importieren.

Hier bei LinuxAPT helfen wir unseren Kunden im Rahmen unserer Serververwaltungsdienste regelmäßig bei der Durchführung verwandter Abfragen zur Installation der Linux-Systemsoftware.

In diesem Zusammenhang werden wir untersuchen, wie Mattermost auf CentOS 8 installiert wird.


Schritte zur Installation und Konfiguration von Mattermost auf CentOS 8 ?

1. Systemaktualisierung durchführen

Lassen Sie uns zunächst sicherstellen, dass Ihr System auf dem neuesten Stand ist:

$ sudo dnf clean all
$ sudo dnf install epel-release
$ sudo dnf update


2. Datenbankserver installieren

Führen Sie den folgenden Befehl aus, um MariaDB zu installieren:

$ sudo dnf install mariadb-server

Standardmäßig ist MariaDB nicht gehärtet. Sie können MariaDB mit dem Skript mysql_secure_installation sichern. Sie sollten jeden Schritt sorgfältig lesen und befolgen, der ein Root-Passwort festlegt, anonyme Benutzer entfernt, Remote-Root-Login verbietet und die Testdatenbank und den Zugriff auf die sichere MariaDB entfernt:

$ mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!
Remove anonymous users? [Y/n] y
 ... Success!
Disallow root login remotely? [Y/n] y
 ... Success!
Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reload privilege tables now? [Y/n] y
 ... Success!
Cleaning up...
Thanks for using MariaDB!

Starten Sie dann den MariaDB-Datenbankserver neu und aktivieren Sie ihn beim Systemstart mit:

$ sudo systemctl restart mariadb
$ sudo systemctl status mariadb
$ sudo systemctl enable mariadb

Melden Sie sich nach der Datenbankinstallation bei der MariaDB-Shell an und erstellen Sie eine Datenbank und einen Benutzer für Mattermost:

$ mysql -u root -p
CREATE DATABASE mattermost;
GRANT ALL PRIVILEGES ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'Your-Strong-Passwd';
FLUSH PRIVILEGES;
QUIT;


3. Installieren Sie Mattermost auf dem System

Zuerst müssen Sie einen separaten Benutzer erstellen, um Mattermost auszuführen. Sie können es mit dem folgenden Befehl erstellen:

$ sudo useradd -d /opt/mattermost -U -M mattermost

Laden Sie als Nächstes die neueste Version von Mattermost herunter:

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

Entpacken Sie das Mattermost-Archiv in das Dokumentenstammverzeichnis auf Ihrem Server:

$ tar xf *.gz
$ mv mattermost /opt/

Erstellen Sie das Speicherverzeichnis für Dateien:

$ mkdir /opt/mattermost/data

Legen Sie außerdem den Besitz und die Berechtigungen fest:

$ sudo chown -R mattermost:mattermost /opt/mattermost
$ sudo chmod -R g+w /opt/mattermost

Als nächstes müssen wir den Datenbanktreiber in der Datei /opt/mattermost/config/config.json einrichten, indem wir einige Änderungen an seinem Inhalt vornehmen. Suchen Sie nach den Zeilen „DriverName“ und „DataSource“ und ändern Sie sie wie folgt:

$ nano /opt/mattermost/config/config.json
"SqlSettings": {
        "DriverName": "mysql",
        "DataSource": "mattermost:Str0ngP@ss@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
        "DataSourceReplicas": [],
        "DataSourceSearchReplicas": [],
        "MaxIdleConns": 20,
        "ConnMaxLifetimeMilliseconds": 3600000,
        "MaxOpenConns": 300,
        "Trace": false,
        "AtRestEncryptKey": "myyti1r597i99qrk7eu91ywqhaawz4md",
        "QueryTimeout": 30
    },

Speichern und schließen Sie die Datei. Wechseln Sie dann in das Verzeichnis /opt/mattermost und starten Sie den Mattermost-Server mit folgendem Befehl:

$ cd /opt/mattermost
$ sudo -u mattermost ./bin/mattermost


4. Konfigurieren Sie den Mattermost Systemd Service

Zuerst erstellen wir mit dem folgenden Befehl eine neue systemd-Unit-Datei:

$ nano /etc/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=syslog.target network.target mariadb.service
[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/run/mattermost.pid
TimeoutStartSec=3600
LimitNOFILE=49152
[Install]
WantedBy=multi-user.target

Starten Sie als Nächstes den Mattermost-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:

$ sudo systemctl daemon-reload
$ sudo systemctl start mattermost.service
$ sudo systemctl enable mattermost.service

Stellen Sie sicher, dass Mattermost ausgeführt wird und auf Port 8065 lauscht. Sie können dies mit dem folgenden Befehl überprüfen:

$ curl http://localhost:8065


5. Nginx mit Mattermost konfigurieren

Installieren und konfigurieren Sie Nginx als Reverse-Proxy für bessere Leistung und Sicherheit. Jetzt installieren wir Nginx auf dem CentOS-System:

$ sudo dnf install nginx

Starten Sie nach der Installation des Nginx-Webservers den Nginx-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

Konfigurieren Sie dann den Nginx-Webserver als Proxy für Mattermost:

$ sudo nano /etc/nginx/conf.d/mattermost.conf
upstream backend {
   server 127.0.0.1:8065;
   keepalive 32;
}
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;
server {
   listen 80;
   server_name    mattermost.example.com;
   location ~ /api/v[0-9]+/(users/)?websocket$ {
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
       client_max_body_size 50M;
       proxy_set_header Host $http_host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_set_header X-Frame-Options SAMEORIGIN;
       proxy_buffers 256 16k;
       proxy_buffer_size 16k;
       client_body_timeout 60;
       send_timeout 300;
       lingering_timeout 5;
       proxy_connect_timeout 90;
       proxy_send_timeout 300;
       proxy_read_timeout 90s;
       proxy_pass http://backend;
   }
   location / {
       client_max_body_size 50M;
       proxy_set_header Connection "";
       proxy_set_header Host $http_host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_set_header X-Frame-Options SAMEORIGIN;
       proxy_buffers 256 16k;
       proxy_buffer_size 16k;
       proxy_read_timeout 600s;
       proxy_cache mattermost_cache;
       proxy_cache_revalidate on;
       proxy_cache_min_uses 2;
       proxy_cache_use_stale timeout;
       proxy_cache_lock on;
       proxy_http_version 1.1;
       proxy_pass http://backend;
   }
}

Starten Sie abschließend den Nginx-Dienst neu, um die Änderungen zu übernehmen:

$ nginx -t
$ sudo systemctl restart nginx


6. Firewall konfigurieren

Firewall-Zugriff auf HTTP- und HTTPS-Ports zulassen:

$ sudo firewall-cmd --add-service={http,https} --permanent
$ sudo firewall-cmd --reload


Wie greife ich auf die Mattermost-Webschnittstelle zu?

Mattermost ist standardmäßig auf HTTP-Port 80 verfügbar.

Öffnen Sie Ihren bevorzugten Browser und navigieren Sie zu http://mattermost.example.com und fahren Sie mit der Konfiguration von Mattermost fort, indem Sie eine E-Mail-Adresse eingeben und ein Konto erstellen.



Cent OS
  1. Grafana unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

  2. FreeIPA unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

  3. OrangeScrum auf CentOS 8 installieren – Schritt-für-Schritt-Anleitung?

  4. Installieren Sie Rar / Unrar auf Centos 8 - Schritt-für-Schritt-Anleitung?

  5. ClamAV unter CentOS 8 installieren – Schritt-für-Schritt-Anleitung ?

Schritt-für-Schritt-Anleitung zur Installation von CentOS 8 (mit Screenshots)

Vivaldi Browser unter CentOS 8 installieren – Eine Schritt-für-Schritt-Anleitung?

Transmission auf CentOS 8 installieren - Eine Schritt-für-Schritt-Anleitung?

Installieren Sie Microsoft SQL Server auf CentOS 8 – eine Schritt-für-Schritt-Anleitung?

Installieren Sie Vtiger CRM auf CentOS 8 - Eine Schritt-für-Schritt-Anleitung?

Gparted unter CentOS 8 installieren - Eine Schritt-für-Schritt-Anleitung?