Mattermost je open source komunikačná platforma určená na internú komunikáciu pre tímy a organizácie. Podporuje textové chaty, zdieľanie súborov, videohovory a integráciu s rôznymi službami tretích strán. Mattermost je možné nasadiť na vlastné servery pre úplnú kontrolu a zabezpečenie údajov. Je alternatívou k riešeniam, ako je Slack, s možnosťou prispôsobenia, automatizácie a integrácie s procesmi DevOps.
Požiadavky
- Virtuálny server (VPS) s nainštalovaným Ubuntu 24.04.
- Root oprávnenia alebo účet so sudo.
- (Voliteľné) Dôrazne odporúčame používať proxy server pred Mattermostom, ktorý podporuje až 200 súbežných používateľov. Ak máte menej ako 200 súbežných používateľov, môžete nakonfigurovať TLS. Ak máte viac ako 200 súbežných používateľov, budete potrebovať proxy server, napríklad NGINX, pred Mattermostom na riadenie prevádzky.
Krok 1: Prihláste sa na server prostredníctvom SSH.
Najprv sa musíte pripojiť k serveru prostredníctvom SSH pod používateľom root. Spustite nasledujúci príkaz, pričom IP_adresu nahraďte IP adresou vášho servera a číslo_portu číslom portu SSH:
ssh root@IP_Address -p Port_number
Ak sa chcete uistiť, že máte nainštalovanú správnu verziu Ubuntu, spustite tento príkaz:
lsb_release -a
Očakávaný výsledok:
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
Krok 2: Inštalácia a konfigurácia databázy.
Aktualizujte operačný systém:
apt update
apt upgrade
Teraz vytvoríme databázu PostgreSQL, ktorú bude používať server Mattermost. Zadajte príkaz (tento príkaz nainštaluje postgresql):
apt install postgresql
Prihláste sa do PostgreSQL:
sudo -u postgres psql
Vytvorte databázu Mattermost:
CREATE DATABASE mattermost;
Vytvorte používateľa mmuser (namiesto mmuser-password použite bezpečnejšie heslo):
CREATE USER mmuser WITH PASSWORD 'mmuser-password';
Prideľte používateľovi mmuser oprávnenia:
GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;
GRANT ALL ON DATABASE mattermost TO mmuser;
ALTER DATABASE mattermost OWNER TO mmuser;
GRANT USAGE, CREATE ON SCHEMA PUBLIC TO mmuser;
Odhláste sa z PostgreSQL
q
Urobte zmeny v súbore pg_hba.conf, ktoré umožnia serveru Mattermost prístup k databáze PostgreSQL.
Otvorte súbor:
nano /etc/postgresql/16/main/pg_hba.conf
Nájdite riadky:
local all all peer
host all all 127.0.0.1/32 scram-sha-256
host all all ::1/128 scram-sha-256
Nahraďte ich nasledovnými textami:
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Uložte zmeny, zatvorte súbor a aktualizujte konfiguráciu PostgreSQL:
systemctl reload postgresql
Skontrolujte, či sa môžeme pripojiť k databáze z používateľa mmuser:
psql --dbname=mattermost --username=mmuser --password
Namiesto hesla mmuser-password zadajte heslo, ktoré sme vytvorili
Ak sme všetko urobili správne - zobrazí sa konzola PostgreSQL.
Ukončite:
q
Krok 3: Stiahnite a nainštalujte server Mattermost.
Stiahnite si najnovšiu verziu servera Mattermost:
wget https://releases.mattermost.com/10.0.1/mattermost-10.0.1-linux-amd64.tar.gz
Rozbaľte:
tar -xvzf mattermost*.gz
Preneste do adresára /opt:
mv mattermost /opt
V predvolenom nastavení používa server Mattermost adresár /opt/mattermost/data.
Vytvorte ho:
mkdir /opt/mattermost/data
Teraz vytvorte skupinu a používateľa mattermost:
useradd --system --user-group mattermost
Udeľte oprávnenia:
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Krok 4: Vytvorte systémovú službu.
Na správu servera Mattermost vytvoríme systémovú službu.
Otvorte editor a vytvorte súbor služby:
nano /lib/systemd/system/mattermost.service
Otvorený, prázdny súbor - vyplňte ho nasledujúcim obsahom:
[Unit]
Description=Mattermost
After=network.target
After=postgresql.service
BindsTo=postgresql.service
[Service]
Type=notify
ExecStart=/opt/mattermost/bin/mattermost
TimeoutStartSec=3600
KillMode=mixed
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
User=mattermost
Group=mattermost
LimitNOFILE=49152
[Install]
WantedBy=multi-user.target
Aktualizujte konfiguráciu systemd:
systemctl daemon-reload
Pred spustením servera Mattermost ho musíte nakonfigurovať.
Vytvorte záložnú kópiu konfiguračného súboru:
cp /opt/mattermost/config/config.json /opt/mattermost/config/config.defaults.json
Otvorte konfiguračný súbor servera Mattermost v textovom editore:
nano /opt/mattermost/config/config.json
Musíme vykonať zmeny.
Nájdite: 1:
"DataSource": "postgres://mmuser:@localhost/mattermost_test?sslmode=disableu0026connect_timeout=10u0026binary_parameters=yes"
Nahraďte:
"DataSource to "postgres://mmuser: <mmuser-password>@<host-name-or-IP>:5432/<mattermost>?sslmode=disable&connect_timeout=10"
Kde.
<mmuser-password> - mmuser heslo pre PostgreSQL.
<host-name-or-IP> - IP adresa servera alebo jeho názov.
<mattermost> - databáza PostgreSQL.
Uložte súbor a ukončite editor.
Aktivujte službu, aby sa spúšťala pri štarte systému, a spustite ju teraz:
systemctl enable --now mattermost
Pomocou príkazu skontrolujte stav servera:
systemctl status mattermost
Krok 5: Pripojte sa k serveru Mattermost.
V prehliadači otvorte <IP adresu servera alebo jeho názov hostiteľa>: 8065
Postupujte podľa pokynov na stránke, ktorá sa otvorí.
Záver
Server Mattermost je teraz nainštalovaný a spustený na vašom serveri Ubuntu 24.04.


