Mattermost este o platformă de comunicare pentru întreprinderi cu sursă deschisă, concepută pentru comunicarea internă a echipelor și organizațiilor. Aceasta acceptă chat-uri text, partajarea de fișiere, apeluri video și integrarea cu diverse servicii terțe. Mattermost poate fi implementat pe propriile servere pentru un control și o securitate complete ale datelor. Este o alternativă la soluții precum Slack, cu capacitatea de a personaliza, automatiza și integra cu procesele DevOps.
Cerințe
- Server virtual (VPS) cu Ubuntu 24.04 instalat.
- Privilegii Root sau un cont cu sudo.
- (Opțional) Vă recomandăm insistent să utilizați un server proxy înainte de Mattermost pentru a suporta până la 200 de utilizatori simultani. Dacă aveți mai puțin de 200 de utilizatori simultani, puteți configura TLS. Dacă aveți mai mult de 200 de utilizatori simultani, veți avea nevoie de un server proxy cum ar fi NGINX în fața Mattermost pentru a gestiona traficul.
Pasul 1: Conectați-vă la server prin SSH.
În primul rând, trebuie să vă conectați la server prin SSH cu utilizatorul root. Rulați următoarea comandă, înlocuind IP_Address cu adresa IP a serverului dvs. și Port_number cu numărul portului SSH:
ssh root@IP_Address -p Port_number
Pentru a vă asigura că aveți instalată versiunea corectă de Ubuntu, executați comanda:
lsb_release -a
Rezultat așteptat:
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
Pasul 2: Instalați și configurați baza de date.
Actualizați sistemul de operare:
apt update
apt upgrade
Acum să creăm o bază de date PostgreSQL pentru a fi utilizată de serverul Mattermost. Tastați comanda (această comandă va instala postgresql):
apt install postgresql
Log in PostgreSQL:
sudo -u postgres psql
Creați o bază de date Mattermost:
CREATE DATABASE mattermost;
Creați utilizatorul mmuser (utilizați o parolă mai sigură în loc de mmuser-password ):
CREATE USER mmuser WITH PASSWORD 'mmuser-password';
Dați permisiuni utilizatorului mmuser:
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;
Ieșirea din PostgreSQL
q
Efectuați modificări la fișierul pg_hba.conf care permit accesul serverului Mattermost la baza de date PostgreSQL.
Deschideți fișierul:
nano /etc/postgresql/16/main/pg_hba.conf
Găsiți liniile:
local all all peer
host all all 127.0.0.1/32 scram-sha-256
host all all ::1/128 scram-sha-256
Înlocuiți cu:
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Salvați modificările, închideți fișierul și actualizați configurația PostgreSQL:
systemctl reload postgresql
Verificați dacă ne putem conecta la baza de date de la utilizatorul mmuser:
psql --dbname=mattermost --username=mmuser --password
Introduceți parola pe care am creat-o în loc de mmuser-password
Dacă am făcut totul corect - va apărea consola PostgreSQL.
Ieșim:
q
Pasul 3: Descărcați și instalați serverul Mattermost.
Descărcați cea mai recentă versiune a serverului Mattermost:
wget https://releases.mattermost.com/10.0.1/mattermost-10.0.1-linux-amd64.tar.gz
Unzip:
tar -xvzf mattermost*.gz
Transferați în directorul /opt:
mv mattermost /opt
În mod implicit, serverul Mattermost utilizează directorul /opt/mattermost/data
Creați-l:
mkdir /opt/mattermost/data
Creați acum un grup și un utilizator mattermost:
useradd --system --user-group mattermost
Acordați permisiuni:
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Pasul 4: Creați un serviciu de sistem.
Pentru a gestiona serverul Mattermost, să creăm un serviciu de sistem.
Deschideți editorul pentru a crea un fișier de serviciu:
nano /lib/systemd/system/mattermost.service
Fișierul deschis, gol - completați-l cu următorul conținut:
[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
Actualizați configurația systemd:
systemctl daemon-reload
Înainte de a rula serverul Mattermost, trebuie să îl configurați.
Creați o copie de rezervă a fișierului de configurare:
cp /opt/mattermost/config/config.json /opt/mattermost/config/config.defaults.json
Deschideți fișierul de configurare a serverului Mattermost într-un editor de text:
nano /opt/mattermost/config/config.json
Trebuie să facem modificările.
Găsiți:
"DataSource": "postgres://mmuser:@localhost/mattermost_test?sslmode=disableu0026connect_timeout=10u0026binary_parameters=yes"
Înlocuiți cu:
"DataSource to "postgres://mmuser: <mmuser-password>@<host-name-or-IP>:5432/<mattermost>?sslmode=disable&connect_timeout=10"
Unde.
<mmuser-password> - parola mmuser pentru PostgreSQL.
<host-name-or-IP> - Adresa IP a serverului sau numele său de gazdă.
<mattermost> - baza de date PostgreSQL.
Salvați fișierul și ieșiți din editor.
Activați serviciul pentru a rula la pornirea sistemului și porniți-l acum:
systemctl enable --now mattermost
Utilizați comanda pentru a verifica starea serverului:
systemctl status mattermost
Pasul 5: Conectați-vă la serverul Mattermost.
Deschideți <adresa IP a serverului sau numele său de gazdă> în browser : 8065
Urmați instrucțiunile de pe pagina care se deschide.
Concluzie
Serverul Mattermost este acum instalat și funcționează pe serverul dvs. Ubuntu 24.04.


