Úvod
Mattermost je samoobslužný online chat s otevřeným zdrojovým kódem. Je vyvinut jako soukromá konverzace pro organizace a společnosti.
Je to nástroj s funkcemi jako Slack a Microsoft Teams. A Mattermost se často instaluje s databázovým serverem PostgreSQL.
Níže je uveden průvodce, jak nasadit Mattermost na Ubuntu 20.04, jak si projdeme níže.
Krok 1 – Aktualizace systému
Spusťte příkaz apt:
$ sudo apt update
Poté spusťte příkaz:
$ sudo apt upgrade
Výstup:
Nakonec nastavte správný název hostitele serveru:
$ sudo hostnamectl set-hostname NEW_HOSTNAME --static
Zde nastavíme název hostitele s názvem „chat.ubuntu ”
$ sudo hostnamectl set-hostname chat.ubuntu --static
Krok 2 – Instalace databázového serveru PostgreSQL
Spusťte příkaz apt k instalaci:
$ sudo apt install postgresql postgresql-contrib
Výstup:

Poté se přihlaste k účtu postgres:
$ sudo --login --user postgres

Spusťte PostgeSQL na terminálu a vytvořte databázi/uživatele Mattermost. Zde jsem jej pojmenoval „linuxer “ s heslem „[e-mail chráněn] ”
psql
CREATE DATABASE mattermost;
CREATE USER linuxer WITH PASSWORD '[email protected]';
GRANT ALL PRIVILEGES ON DATABASE mattermost to linuxer;
\q

Krok 3 – Vytvořte systémového uživatele a skupinu Mattermost
Vytvoříme systémového uživatele a skupinu s názvem „mattermost “:
$ sudo useradd --system --user-group mattermost
Můžete potvrdit příkazem:
$ id mattermost
Výstup:

Krok 4 – Instalace Mattermost
Nejprve musíte vytvořit složku s názvem „mattermost ”
$ mkdir mattermost
Poté na něj přejděte:
$ cd mattermost
Spusťte příkaz wget a stáhněte si Mattermost:
$ wget https://releases.mattermost.com/5.38.1/mattermost-5.38.1-linux-amd64.tar.gz
Výstup:

Extrahujte balíček:
$ tar -xvzf mattermost*.gz
Zkopírujte extrahovaný soubor do adresáře /otp:
$ sudo cp -r mattermost /opt
Vytvořte složku pro Mattermost, která bude obsahovat uživatelská data:
$ sudo mkdir /opt/mattermost/data
Nastavte správné vlastnictví a oprávnění:
$ sudo chown -R mattermost:mattermost /opt/mattermost
Nakonec udělme oprávnění k zápisu do adresáře /opt/mattermost:
$ sudo chmod -R g+w /opt/mattermost
Krok 5 – Konfigurace serveru Mattermost
Nastavení konfigurace v souboru /opt/mattermost/config/config.json
$ sudo nano /opt/mattermost/config/config.json
Poté nakonfigurujte nastavení databáze PostgreSQL:
Po otevření textového editoru stiskněte Ctrl + W a vyhledejte „DriverName “ 
Změňte řádek v červené části:
"postgres://matteruser:[email protected]:5432/mattermost?sslmode=disable&connect_timeout=10",

Uložte si to.
Krok 6 – Konfigurace služby Systemd
Vytvořte Mattermost Systemd:
$ sudo vim /etc/systemd/system/mattermost.service
Zadejte následující řádky:
[Unit] Description=Mattermost After=network.target After=postgresql.service Requires=postgresql.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=multi-user.target

Stiskněte ESC + :wq pro uložení.
Načtěte novou jednotku do systemd:
$ sudo systemctl daemon-reload
Potvrďte stav spuštěné služby:
$ systemctl status mattermost.service
Výstup:
Povolit službu nejzávažnější:
$ sudo systemctl enable mattermost.service
Krok 7 – Nainstalujte Nginx
$ sudo apt -y install nginx

Musíte zadat svou doménu do konfiguračního souboru Mattermost:
$ sudo nano /opt/mattermost/config/config.json

Uložte si to.
Otevřete textový editor a nakonfigurujte přístup k vaší doméně:
$ sudo nano /etc/nginx/sites-available/mattermost.conf
Přidejte řádky níže:
upstream backend {
server localhost: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 your domain;
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;
}
}

Uložte si to.
Aby konfigurace tohoto webu fungovala, musíte pro něj vytvořit měkký odkaz ve složce /etc/nginx/sites-enabled:
$ sudo ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.conf
Spusťte tento příkaz pro kontrolu platnosti konfigurace:
$ sudo nginx -t
Výstup:
Restartujte Nginx:
$ sudo systemctl restart nginx
Poté spusťte nejzásadnější službu:
$ sudo systemctl start mattermost
Můžete zkusit získat přístup ke své doméně.
Závěr
Už jste si prošli podrobnosti o tom, jak nasadit Mattermost na Ubuntu 20.04. Děkujeme za přečtení.