Mattermost je open source podniková komunikační platforma určená pro interní komunikaci týmů a organizací. Podporuje textové chaty, sdílení souborů, videohovory a integraci s různými službami třetích stran. Mattermost lze nasadit na vlastních serverech pro úplnou kontrolu a zabezpečení dat. Je alternativou k řešením, jako je Slack, s možností přizpůsobení, automatizace a integrace s procesy DevOps.
Požadavky
- Virtuální server (VPS) s nainstalovaným Ubuntu 24.04.
- Práva roota nebo účet se sudo.
- (Volitelné) Důrazně doporučujeme použít proxy server před Mattermostem, který podporuje až 200 souběžných uživatelů. Pokud máte méně než 200 souběžných uživatelů, můžete nakonfigurovat TLS. Pokud máte více než 200 souběžných uživatelů, budete potřebovat proxy server, například NGINX, před Mattermostem pro řízení provozu.
Krok 1: Přihlaste se k serveru prostřednictvím SSH.
Nejprve se musíte k serveru připojit prostřednictvím SSH pod uživatelem root. Spusťte následující příkaz, přičemž IP_adresu nahraďte IP adresou vašeho serveru a číslo_portu číslem portu SSH:
ssh root@IP_Address -p Port_number
Chcete-li se ujistit, že máte nainstalovanou správnou verzi Ubuntu, spusťte příkaz:
lsb_release -a
Očekávaný výsledek:
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
Krok 2: Nainstalujte a nakonfigurujte databázi.
Aktualizujte operační systém:
apt update
apt upgrade
Nyní vytvoříme databázi PostgreSQL, kterou bude používat server Mattermost. Zadejte příkaz (tento příkaz nainstaluje postgresql):
apt install postgresql
Přihlaste se do PostgreSQL:
sudo -u postgres psql
Vytvořte databázi Mattermost:
CREATE DATABASE mattermost;
Vytvořte uživatele mmuser (místo mmuser-password použijte bezpečnější heslo):
CREATE USER mmuser WITH PASSWORD 'mmuser-password';
Přidělte uživateli mmuser oprávnění:
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ášení z PostgreSQL
q
Proveďte změny v souboru pg_hba.conf, které serveru Mattermost umožní přístup k databázi PostgreSQL.
Otevřete soubor:
nano /etc/postgresql/16/main/pg_hba.conf
Najděte řádky:
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 je následujícími:
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Uložte změny, zavřete soubor a aktualizujte konfiguraci PostgreSQL:
systemctl reload postgresql
Zkontrolujte, zda se můžeme připojit k databázi z uživatele mmuser:
psql --dbname=mattermost --username=mmuser --password
Místo hesla mmuser-password zadejte heslo, které jsme vytvořili.
Pokud jsme vše provedli správně - zobrazí se konzola PostgreSQL.
Ukončete ji:
q
Krok 3: Stáhněte a nainstalujte server Mattermost.
Stáhněte si nejnovější verzi serveru Mattermost:
wget https://releases.mattermost.com/10.0.1/mattermost-10.0.1-linux-amd64.tar.gz
Rozbalte:
tar -xvzf mattermost*.gz
Přeneste do adresáře /opt:
mv mattermost /opt
Ve výchozím nastavení používá server Mattermost adresář /opt/mattermost/data.
Vytvořte jej: Vložte do adresáře adresář Mattermatter:
mkdir /opt/mattermost/data
Nyní vytvořte skupinu a uživatele mattermost:
useradd --system --user-group mattermost
Udělte oprávnění:
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Krok 4: Vytvořte systémovou službu.
Pro správu serveru Mattermost vytvoříme systémovou službu.
Otevřete editor a vytvořte soubor služby:
nano /lib/systemd/system/mattermost.service
Otevřený, prázdný soubor - vyplňte jej následujícím obsahem:
[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 konfiguraci systemd:
systemctl daemon-reload
Před spuštěním serveru Mattermost je třeba jej nakonfigurovat.
Vytvořte záložní kopii konfiguračního souboru:
cp /opt/mattermost/config/config.json /opt/mattermost/config/config.defaults.json
Otevřete konfigurační soubor serveru Mattermost v textovém editoru:
nano /opt/mattermost/config/config.json
Musíme provést změny.
Najděte: 1:
"DataSource": "postgres://mmuser:@localhost/mattermost_test?sslmode=disableu0026connect_timeout=10u0026binary_parameters=yes"
Nahradit textem::
"DataSource to "postgres://mmuser: <mmuser-password>@<host-name-or-IP>:5432/<mattermost>?sslmode=disable&connect_timeout=10"
Kde.
<mmuser-password> - mmuser heslo pro PostgreSQL.
<host-name-or-IP> - IP adresa serveru nebo jeho hostitelské jméno.
<mattermost> - databáze PostgreSQL.
Uložte soubor a ukončete editor.
Aktivujte službu, aby se spouštěla při startu systému, a nyní ji spusťte:
systemctl enable --now mattermost
Pomocí příkazu zkontrolujte stav serveru:
systemctl status mattermost
Krok 5: Připojte se k serveru Mattermost.
V prohlížeči otevřete <IP adresu serveru nebo jeho název hostitele>: 8065
Postupujte podle pokynů na stránce, která se otevře.
Závěr:
Server Mattermost je nyní nainstalován a spuštěn na vašem serveru Ubuntu 24.04.


