In questo tutorial, ti mostreremo come installare Mattermost su Debian 11. Per quelli di voi che non lo sapessero, Mattermost è un servizio di chat online self-hosted e open source progettato da utilizzare come piattaforma di chat interna per aziende e organizzazioni.Offre una comunicazione sicura tra i team e una collaborazione più semplice tra individui e gruppi.Mattermost rende disponibili i dati tra gli sviluppatori consentendo loro di accedere al codice sorgente e di contribuire direttamente ad esso in luoghi diversi perché è basato su cloud.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò l'installazione passo passo della piattaforma open source Mattermost per la collaborazione tra sviluppatori su una Debian 11 (Bullseye).
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:Debian 11 (Bullseye).
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Un
non-root sudo user
o accedere all'root user
. Ti consigliamo di agire comenon-root sudo user
, tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.
Installa Mattermost su Debian 11 Bullseye
Passaggio 1. Prima di installare qualsiasi software, è importante assicurarsi che il sistema sia aggiornato eseguendo il seguente apt
comandi nel terminale:
sudo apt update sudo apt upgrade
Passaggio 2. Installazione dello stack LEMP.
È richiesto un server LEMP Debian 11. Se non hai installato LAMP, leggi il nostro tutorial precedente per installare il server LEMP su Debian 11.
Passaggio 3. Configurazione di MariaDB per Mattermost.
Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando mysql_secure_installation
sceneggiatura. dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MariaDB:
mysql_secure_installation
Configuralo in questo modo:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Successivamente, dovremo accedere alla console MariaDB e creare un database per Mattermost. Esegui il seguente comando:
mysql -u root -p
Questo ti chiederà una password, quindi inserisci la tua password di root MariaDB e premi Invio. Una volta effettuato l'accesso al server del database, devi creare un database per Installazione importante:
MariaDB [(none)]> CREATE DATABASE mattermost_db; MariaDB [(none)]> CREATE USER 'mattermost_user' IDENTIFIED BY 'your-strong-password'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON mattermost_db.* TO 'mattermost_user'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Passaggio 4. Installazione di Mattermost su Debian 11.
Prima di installare Mattermost, crea un nuovo utente e gruppo che eseguirà il nostro server Mattermost:
sudo useradd --system --user-group mattermost
Per impostazione predefinita, Mattermost non è disponibile sul repository di base di Debian 11. Quindi, ora scarichiamo l'ultima versione stabile di Mattermost dalla pagina ufficiale:
wget wget https://releases.mattermost.com/6.0.2/mattermost-6.0.2-linux-amd64.tar.gz
Successivamente, estrai il file scaricato:
tar xvzf mattermost-6.0.2-linux-amd64.tar.gz -C /opt/ sudo mkdir /opt/mattermost/data
Dovremo modificare alcune autorizzazioni per le cartelle:
chown -R mattermost:mattermost /opt/mattermost chmod -R g+w /opt/mattermost
Passaggio 5. Configura Mattermost.
Ora dobbiamo definire alcuni parametri nella configurazione di Mattermost. Modifica il file di configurazione di Mattermost e definisci l'URL del tuo sito e le impostazioni del database:
nano /opt/mattermost/config/config.json
Cambia le seguenti righe:
"SiteURL": "http://mattermost.your-domian.com", "DriverName": "MySQL", "DataSource": "mmuser:your-strong-passwdD@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Passaggio 6. Crea un file di servizio Systemd per Mattermost.
Imposteremo systemd
un servizio per avviare e interrompere il servizio Mattermost:
nano /lib/systemd/system/mattermost.service
Aggiungi le seguenti righe:
[Unit] Description=Mattermost After=network.target After=mysql.service Requires=mysql.service [Service] Type=notify User=mattermost Group=mattermost ExecStart=/opt/mattermost/bin/mattermost TimeoutStartSec=3600 Restart=always RestartSec=10 WorkingDirectory=/opt/mattermost LimitNOFILE=49152 [Install] WantedBy=mariadb.service
Salva e chiudi il file, quindi ricarica il systemd
demone per applicare le modifiche alla configurazione:
sudo systemctl daemon-reload sudo systemctl start mattermost sudo systemctl enable mattermost
Passaggio 6. Configura Nginx come proxy inverso.
Ora crea un file di configurazione dell'host virtuale Nginx con il seguente comando:
nano /etc/nginx/sites-available/mattermost.conf
Aggiungi le seguenti righe:
upstream mattermost { server localhost:8065; keepalive 32; } proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off; server { listen 80; server_name mattermost.your-domain; location ~ /api/v[0-9]+/(users/)?websocket$ { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; client_max_body_size 50M; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; client_body_timeout 65; send_timeout 200; lingering_timeout 5; proxy_connect_timeout 80; proxy_send_timeout 300; proxy_read_timeout 80s; proxy_pass http://mattermost; } location / { client_max_body_size 50M; proxy_set_header Connection ""; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_cache mattermost_cache; proxy_cache_revalidate on; proxy_cache_min_uses 2; proxy_cache_use_stale timeout; proxy_cache_lock on; proxy_http_version 1.1; proxy_pass http://mattermost; } }
Salva e chiudi il file, quindi attiva la configurazione dell'host virtuale con il seguente comando:
ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.conf sudo systemctl restart nginx
Passaggio 7. Proteggi Mattermost con Let's Encrypt SSL.
Per prima cosa, installa Certbot sul tuo sistema Debian usando il seguente comando:
sudo apt install certbot python3-certbot-nginx
Quindi, genera i certificati, con il seguente comando:
certbot --nginx -d mattermost.your-domian.com
Ti verrà quindi richiesto di inserire un indirizzo email per il certificato. Dopo averlo inserito devi accettare i T&C e decidere se desideri condividere la tua email indirizzo con la Electronic Frontier Foundation. Quest'ultimo passaggio è facoltativo. Una volta completato, ricarica nuovamente Apache per caricare tutte le nuove configurazioni.
Passaggio 8. Accesso all'interfaccia Web di Mattermost.
Una volta installato correttamente, apri il browser web e digita l'URL https://mattermost.your-domian.com
per accedere all'interfaccia utente Web di Mattermost. Dovresti vedere la seguente schermata:
Congratulazioni! Hai installato con successo Mattermost. Grazie per aver utilizzato questo tutorial per installare l'ultima versione della piattaforma open source Mattermost per la collaborazione degli sviluppatori su Debian 11 Bullseye. Per ulteriore aiuto o informazioni utili, noi ti consiglio di controllare il sito ufficiale di Mattermost.