Jak skonfigurować Mattermost w systemie Linux

Masz dość korzystania ze Slacka w systemie Linux? Chcesz hostować na serwerze własną usługę wiadomości zespołowej? Możesz skonfigurować Mattermost w systemie Linux i używać go zamiast tego. To otwarta alternatywa dla Slacka z podobnymi funkcjami!

Zanim zaczniemy

W tym samouczku skupimy się na konfiguracji oprogramowania serwera Mattermost na serwerze Ubuntu 18.04 LTS (wsparcie długoterminowe). Dlatego jeśli masz serwer Linux (lub komputer stacjonarny, który może działać przez długi czas), konieczne jest, aby przejść na oficjalną stronę internetową, pobrać serwer Ubuntu i zainstalować go, zanim zaczniemy.

Dlaczego serwer Ubuntu? Powód, dla którego skupiamy się na Ubuntu, jest prosty: jest to jeden z najłatwiejszych do uruchomienia systemów operacyjnych Linux dla serwerów. Co więcej, jego wydania LTS zapewniają, że użytkownicy będą mieli wsparcie dla swojej konfiguracji Mattermost przez co najmniej pięć lat.

Uwaga: jeśli jesteś zainteresowany konfiguracją komponentu serwerowego Mattermost w systemie Linux i nie korzystasz z Ubuntu Server, będziesz mógł znaleźć pomoc na oficjalnej stronie internetowej.

Skonfiguruj bazę danych

Mattermost potrzebuje oprogramowania bazy danych MySQL skonfigurowanego na serwerze Ubuntu do prawidłowego działania. Aby go zainstalować, otwórz terminal i zaloguj się do serwera za pomocą SSH.

Po otwarciu działającej sesji terminala użyj menedżera pakietów Apt, aby zainstalować MySQL w systemie (jeśli jeszcze go nie masz).

sudo apt install mysql-server

Konfiguracja MySQL na Twoim komputerze Ubuntu zajmie trochę czasu. Po zakończeniu uruchom polecenie bezpiecznej instalacji, aby zakończyć instalację.

sudo mysql_secure_installation

MySQL jest instalowany na serwerze Ubuntu. Następnym krokiem procesu tworzenia bazy danych jest zalogowanie się do interfejsu wiersza poleceń jako root.

Uwaga: upewnij się, że używasz hasła roota ustawionego w części przewodnika dotyczącej bezpiecznej instalacji.

sudo mysql

Utwórz nowego użytkownika dla bazy danych SQL. Nazwa użytkownika to mmuser.

create user 'mmuser'@'%' identified by 'mmuser-password';

Utwórz najważniejszą bazę danych użytkowników w MySQL.

create database mattermost;

Przyznaj kontu użytkownika mmuser dostęp do najważniejszej bazy danych.

grant all privileges on mattermost.* to 'mmuser'@'%';

Na koniec wyjdź z interfejsu wiersza poleceń MySQL i wróć do Bash.

exit

Zainstaluj oprogramowanie serwera Mattermost

Serwer Mattermost jest hostowany na oficjalnej stronie internetowej. Możliwe jest pobranie go bezpośrednio na serwer za pomocą programu wget. Aby uzyskać najnowszą wersję oprogramowania serwera, otwórz terminal i uruchom następujące polecenie.

Uwaga: Mattermost ma kilka dostępnych wersji. Jeśli potrzebujesz nowszej wersji niż ta, którą omówiono w tym przewodniku, przejdź do oficjalnego pobrania i zamień łącze, którego użyliśmy poniżej, na żądaną wersję.

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

Oprogramowanie serwera jest pobierane na serwer Ubuntu. Nadszedł czas, aby wyodrębnić go z archiwum TarGZ.

tar -xvzf mattermost*.gz

sudo mv mattermost /opt

sudo mkdir /opt/mattermost/data

Skonfiguruj serwer Mattermost

Oprogramowanie serwera jest skonfigurowane w systemie Ubuntu, ale nie będzie działać, dopóki nie skonfigurujemy go poprawnie. Konfiguracja rozpoczyna się od utworzenia najważniejszego użytkownika.

sudo useradd --system --user-group mattermost

Zapewnij nowemu użytkownikowi Mattermost pełny dostęp do oprogramowania serwera Mattermost.

sudo chown -R mattermost:mattermost /opt/mattermost

sudo chmod -R g+w /opt/mattermost

Użytkownik jest skonfigurowany. Teraz musisz powiedzieć Mattermost, jakiej bazy danych ma używać serwer. W oknie terminala otwórz następujący plik za pomocą Nano.

sudo nano /opt/mattermost/config/config.json

Znajdź ten kod w pliku:

„Mmuser: mostest @ tcp (dockerhost: 3306) / mattermost_test? Charset = utf8mb4, utf8 & readTimeout = 30s & writeTimeout = 30s”

Usuń powyższy kod z pliku konfiguracyjnego i zastąp go kodem wymienionym poniżej.

Uwaga: musisz zmienić hasło mmuser-password za pomocą wcześniej ustawionego hasła mmuser SQL. Musisz także dodać nazwę hosta lub adres IP swojego serwera w polu nazwa-hosta-lub-IP.

„Mmuser: @tcp (: 3306) / mattermost? Charset = utf8mb4, utf8 & readTimeout = 30s & writeTimeout = 30s”

Po dokonaniu wszystkich zmian czas uruchomić Mattermost, aby go przetestować i upewnić się, że działa poprawnie.

cd /opt/mattermost

sudo -u mattermost ./bin/mattermost

Jeśli serwer działa poprawnie, zamknij go, naciskając Ctrl + C.

Utwórz usługę Mattermost systemd

Aby Mattermost działał bez interakcji z użytkownikiem, konieczny jest plik usługi systemd. W terminalu użyj polecenia dotykowego i utwórz nową usługę systemd.

sudo touch /lib/systemd/system/mattermost.service

Otwórz nowy plik usługi w Nano.

sudo nano /lib/systemd/system/mattermost.service

Wklej poniższy kod do Nano.

[Unit]
Description = Mattermost
After = network.target
After = mysql.service
Wymaga = mysql.service

[Service]
Typ = powiadom
ExecStart = / opt / Mattermost / bin / Mattermost
TimeoutStartSec = 3600
Restart = zawsze
RestartSec = 10
WorkingDirectory = / opt / mattermost
Użytkownik = najważniejszy
Grupa = najważniejsza
LimitNOFILE = 49152

[Install]
WantedBy = mysql.service

Zapisz zmiany, naciskając Ctrl + O i wyjdź, naciskając Ctrl + X. Następnie załaduj nową usługę Mattermost systemd.

sudo systemctl daemon-reload

sudo systemctl start mattermost.service

sudo systemctl enable mattermost.service

Dostęp do Mattermost

Serwer Mattermost działa. Uzyskaj do niego dostęp i zacznij korzystać z usługi, odwiedzając następujący adres URL.

https://localhost:8065

Alternatywnie, postępuj zgodnie z naszym przewodnikiem, aby uruchomić pakiety Snap. Następnie zainstaluj Mattermost desktop za pomocą poniższego polecenia.

sudo snap install mattermost-desktop