GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Mattermost su CentOS 8

In questo tutorial, ti mostreremo come installare Mattermost su CentOS 8. Per quelli di voi che non lo sapessero, Mattermost è un'alternativa Slack al cloud privato e open source. Un posto di lavoro sistema di messaggistica per Web, PC e telefoni, rilasciato sotto licenza MIT. In alternativa alla messaggistica SaaS proprietaria, Mattermost riunisce tutte le comunicazioni del tuo team in un unico posto, rendendole ricercabili e accessibili ovunque. Mattermost è "Slack-compatibile, non Slack -limited", supportando un superset di integrazioni webhook in entrata e in uscita di Slack, inclusa la compatibilità con le integrazioni Slack esistenti. Dai team Slack esistenti, puoi importare utenti, cronologia dei canali pubblici e persino colori di impostazione dei temi in Mattermost.

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 di Mattermost su CentOS 8.

Prerequisiti

  • Un server che esegue uno dei seguenti sistemi operativi:CentOS 8.
  • 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 come non-root sudo user , tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.

Installa Mattermost su CentOS 8

Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.

sudo dnf clean all
sudo dnf install epel-release
sudo dnf update

Passaggio 2. Installazione del server di database.

Esegui il seguente comando per installare MariaDB:

sudo dnf install mariadb-server

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
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!

Remove anonymous users? [Y/n] y
 ... Success!

Disallow root login remotely? [Y/n] y
 ... Success!

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...
Thanks for using MariaDB!

Quindi, riavvia il server del database MariaDB e abilitalo all'avvio all'avvio del sistema utilizzando:

sudo systemctl restart mariadb
sudo systemctl status mariadb
sudo systemctl enable mariadb

Dopo l'installazione del database, accedi alla shell MariaDB e crea database e utente per Mattermost:

$ mysql -u root -p
CREATE DATABASE mattermost;
GRANT ALL PRIVILEGES ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'Your-Strong-Passwd';
FLUSH PRIVILEGES;
QUIT;

Passaggio 3. Installazione di Mattermost su CentOS 8.

Per prima cosa, dovrai creare un utente separato per eseguire Mattermost. Puoi crearlo con il seguente comando:

sudo useradd -d /opt/mattermost -U -M mattermost

Avanti, scarica l'ultima versione di Mattermost:

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

Decomprimi l'archivio Mattermost nella directory principale del documento sul tuo server:

tar xf *.gz
mv mattermost /opt/

Crea la directory di archiviazione per i file:

mkdir /opt/mattermost/data

Inoltre, imposta la proprietà e le autorizzazioni:

sudo chown -R mattermost:mattermost /opt/mattermost
sudo chmod -R g+w /opt/mattermost

Avanti, dovremo configurare il driver del database nel file /opt/mattermost/config/config.json apportando alcune modifiche al suo contenuto. Cerca "DriverName ” e “DataSource ” e cambia come segue:

nano /opt/mattermost/config/config.json
"SqlSettings": {
        "DriverName": "mysql",
        "DataSource": "mattermost:Str0ngP@ss@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
        "DataSourceReplicas": [],
        "DataSourceSearchReplicas": [],
        "MaxIdleConns": 20,
        "ConnMaxLifetimeMilliseconds": 3600000,
        "MaxOpenConns": 300,
        "Trace": false,
        "AtRestEncryptKey": "myyti1r597i99qrk7eu91ywqhaawz4md",
        "QueryTimeout": 30
    },

Salva e chiudi il file. Quindi, cambia la directory in /opt/mattermost e avvia il server Mattermost con il seguente comando:

cd /opt/mattermost
sudo -u mattermost ./bin/mattermost

Passaggio 4. Configura il servizio Mattermost Systemd.

In primo luogo, creeremo un nuovo systemd file unit utilizzando il comando seguente:

nano /etc/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=syslog.target network.target mariadb.service

[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/run/mattermost.pid
TimeoutStartSec=3600
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

Avvia quindi il servizio Mattermost e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

sudo systemctl daemon-reload
sudo systemctl start mattermost.service
sudo systemctl enable mattermost.service

Verifica che Mattermost sia in esecuzione e in ascolto sulla porta 8065. Puoi verificarlo con il seguente comando:

curl http://localhost:8065

Passaggio 5. Configurazione di Nginx con Mattermost.

Installa e configura Nginx come proxy inverso per prestazioni e sicurezza migliori. Ora installiamo Nginx sul sistema CentOS:

sudo dnf install nginx

Dopo aver installato il server web Nginx, avvia il servizio Nginx e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

sudo systemctl start nginx
sudo systemctl enable nginx

Quindi, configura il server web Nginx come proxy per Mattermost:

sudo nano /etc/nginx/conf.d/mattermost.conf
upstream backend {
   server 127.0.0.1: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.example.com;

   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 60;
       send_timeout 300;
       lingering_timeout 5;
       proxy_connect_timeout 90;
       proxy_send_timeout 300;
       proxy_read_timeout 90s;
       proxy_pass http://backend;
   }

   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://backend;
   }
}

Infine, riavvia il servizio Nginx per applicare le modifiche:

nginx -t
sudo systemctl restart nginx

Passaggio 6. Configura Firewall.

Consenti l'accesso al firewall sulle porte HTTP e HTTPS:

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Passaggio 7. Accesso all'interfaccia Web di Mattermost.

Mattermost sarà disponibile sulla porta HTTP 80 per impostazione predefinita. Apri il tuo browser preferito e vai a http://mattermost.example.com e continua a configurare Mattermost inserendo un indirizzo email e creando un account.

Congratulazioni! Hai installato con successo Mattermost. Grazie per aver utilizzato questo tutorial per l'installazione di Mattermost sul sistema CentOS 8. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare il sito Web ufficiale di Mattermost.


Cent OS
  1. Come installare Vagrant su CentOS 7

  2. Come installare Gitea su CentOS 8

  3. Come installare Memcached su CentOS 8

  4. Come installare Nginx su CentOS 7

  5. Come installare ownCloud su CentOS 8

Come installare Zoom su CentOS 8

Come installare Nethogs su CentOS

Come installare Yourls in CentOS 8

Come installare SuiteCRM su CentOS 8

Come installare Minikube su CentOS 8

Come installare Mattermost su CentOS 8