Mattermost is een open source enterprise communicatieplatform ontworpen voor interne communicatie voor teams en organisaties. Het ondersteunt tekstchats, het delen van bestanden, videogesprekken en integratie met verschillende diensten van derden. Mattermost kan worden ingezet op je eigen servers voor volledige controle en beveiliging van gegevens. Het is een alternatief voor oplossingen zoals Slack, met de mogelijkheid om aan te passen, te automatiseren en te integreren met DevOps-processen.
Eerst moet u verbinding maken met uw server via SSH onder de root-gebruiker. Voer het volgende commando uit, waarbij u IP_Address vervangt door het IP-adres van uw server en Port_number door het SSH poortnummer:
ssh root@IP_Address -p Port_number
Voer het commando uit om er zeker van te zijn dat je de juiste versie van Ubuntu hebt geïnstalleerd:
lsb_release -a
Verwacht resultaat:
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
Upgrade het OS:
apt update
apt upgrade
Laten we nu een PostgreSQL database aanmaken voor gebruik door de Mattermost server. Type het commando (dit commando zal postgresql installeren):
apt install postgresql
Log in op PostgreSQL:
sudo -u postgres psql
Creëer een Mattermost database:
CREATE DATABASE mattermost;
Maak de mmuser gebruiker aan (gebruik een veiliger wachtwoord in plaats van mmuser-paswoord
):
CREATE USER mmuser WITH PASSWORD 'mmuser-password';
Geef de mmuser gebruiker rechten:
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;
Log uit bij PostgreSQL
q
Breng wijzigingen aan in het bestand pg_hba.conf om de Mattermost server toegang te geven tot de PostgreSQL database.
Open het bestand:
nano /etc/postgresql/16/main/pg_hba.conf
Zoek de regels:
local all all peer
host all all 127.0.0.1/32 scram-sha-256
host all all ::1/128 scram-sha-256
Vervang door:
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Sla de wijzigingen op, sluit het bestand en werk de PostgreSQL configuratie bij:
systemctl reload postgresql
Controleer of we verbinding kunnen maken met de database vanuit de mmuser gebruiker:
psql --dbname=mattermost --username=mmuser --password
Voer het wachtwoord in dat we hebben aangemaakt in plaats van mmuser-password
Als we alles goed hebben gedaan - verschijnt de PostgreSQL console.
Afsluiten:
q
Download de laatste versie van Mattermost server:
wget https://releases.mattermost.com/10.0.1/mattermost-10.0.1-linux-amd64.tar.gz
Unzip:
tar -xvzf mattermost*.gz
Overbrengen naar de /opt directory:
mv mattermost /opt
Standaard gebruikt de Mattermost server de map /opt/mattermost/data
.
Maak het aan:
mkdir /opt/mattermost/data
Maak nu een groep en gebruiker mattermost aan:
useradd --system --user-group mattermost
Geef rechten:
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Om de Mattermost server te beheren, maken we een systeemdienst aan.
Open de editor om een servicebestand aan te maken:
nano /lib/systemd/system/mattermost.service
Het geopende, lege bestand - vul het met de volgende inhoud:
[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
Update de systemd configuratie:
systemctl daemon-reload
Voordat je de Mattermost server draait, moet je hem configureren.
Maak een reservekopie van het configuratiebestand:
cp /opt/mattermost/config/config.json /opt/mattermost/config/config.defaults.json
Open het Mattermost server configuratiebestand in een teksteditor:
nano /opt/mattermost/config/config.json
We moeten de wijzigingen aanbrengen.
Zoeken:
"DataSource": "postgres://mmuser:@localhost/mattermost_test?sslmode=disableu0026connect_timeout=10u0026binary_parameters=yes"
Vervangen door:
"DataSource to "postgres://mmuser: <mmuser-password>@<host-name-or-IP>:5432/<mattermost>?sslmode=disable&connect_timeout=10"
Waar.
<mmuser-password>
- mmuser wachtwoord voor PostgreSQL.
<host-name-or-IP>
- IP-adres van de server of de hostnaam.
<mattermost>
- PostgreSQL database.
Sla het bestand op en sluit de editor af.
Activeer de service om bij het opstarten van het systeem te draaien en start hem nu:
systemctl enable --now mattermost
Gebruik het commando om de status van de server te controleren:
systemctl status mattermost
Open het <IP adres van uw server of de hostnaam>
in uw browser : 8065
Volg de instructies op de pagina die opent.
Mattermost server is nu geïnstalleerd en draait op je Ubuntu 24.04 server.