In questo tutorial, ti mostreremo come installare e configurare Mattermost sul server CentOS 7. Per chi non lo sapesse, Mattermost è un cloud privato open source Slack alternativa. Un sistema di messaggistica sul posto di lavoro per Web, PC e telefoni, rilasciato con 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 tuoi team Slack esistenti, puoi importare utenti, cronologia dei canali pubblici e persino i colori delle impostazioni 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 un server CentOS 7.
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:CentOS 7.
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Accesso SSH al server (o semplicemente apri Terminal se sei su un desktop).
- 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 CentOS 7
Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.
yum clean all yum -y update
Passaggio 2. Installazione del database MySQL.
Installa e configura il database per l'utilizzo da parte del server Mattermost. Puoi installare MySQL utilizzando il comando seguente:
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm yum localinstall mysql57-community-release-el7-9.noarch.rpm
Avanti, installa MySQL:
sudo yum install mysql-community-server
Avvia il server MySQL:
systemctl start mysqld.service chkconfig mysqld on
Configurazione di MySQL per SugarCRM.
Per impostazione predefinita, MySQL non è protetto. Puoi proteggere MySQL utilizzando 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 MySQL:
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
Avanti, dovremo accedere alla console MySQL 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:
mysql> CREATE USER 'mmuser'@'localhost' IDENTIFIED BY 'mmuser_strong_password'; mysql> CREATE DATABASE mattermostdb; mysql> GRANT ALL PRIVILEGES ON mattermostdb.* TO 'mmuser'@'localhost'; mysql> FLUSH PRIVILEGES; mysql> EXIT;
Passaggio 3. Installazione di Mattermost Server.
La prima cosa da fare è andare alla pagina di download di Mattermost e scaricare l'ultima versione stabile di Mattermost. Al momento della stesura di questo articolo è la versione 3.6.2 :
wget https://releases.mattermost.com/3.6.2/mattermost-3.6.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
Configura un utente di sistema e un gruppo chiamato Mattermost che eseguirà questo servizio e imposta la proprietà e le autorizzazioni:
useradd --system --user-group mattermost chown -R mattermost:mattermost /opt/mattermost chmod -R g+w /opt/mattermost
Imposta il driver del database tramite /opt/mattermost/config/config.json
file. In esso, cerca le righe "DriverName" e "DataSource" e modificale come segue:
"DriverName": "mysql" "DataSource": "mmuser:@tcp(localhost:3306)/mattermost?charset=utf8"
Salva, esci e testa il server Mattermost con il seguente comando:
sudo -u mattermost /opt/mattermost/bin/platform
Quando il server si avvia, mostra alcune informazioni di registro e il testo Server è in ascolto su 8065. Puoi fermare il server premendo CTRL+C nella finestra del terminale.
Passaggio 4. Crea un systemd
unità per Mattermost.
Crea un systemd
file per Mattermost, /etc/systemd/system/mattermost.service
e, in esso, incollare la seguente configurazione:
[Unit] Description=Mattermost After=syslog.target network.target postgresql-9.4.service [Service] Type=simple WorkingDirectory=/opt/mattermost/bin User=mattermost ExecStart=/opt/mattermost/bin/platform PIDFile=/var/spool/mattermost/pid/master.pid LimitNOFILE=49152 [Install] WantedBy=multi-user.target
Rendi eseguibile il servizio:
chmod 664 /etc/systemd/system/mattermost.service
E ricarica i servizi:
systemctl daemon-reload
Abilita il servizio Mattermost:
chkconfig mattermost on
E avvialo con systemd
:
systemctl start mattermost
Passaggio 5. Installazione e configurazione di NGINX.
In un sistema di produzione, utilizza un server proxy davanti al server Mattermost. In questo caso, NGINX. I principali vantaggi di questa operazione sono:
- Terminazione SSL
- Mappatura delle porte:da 80 a 8065
- Reindirizzamento da HTTP a HTTPS
- Registri delle richieste standard
Per installare NGINX su CentOS 7, crea un file repository yum, /etc/yum.repos.d/nginx.repo
, con il seguente contenuto:
[nginx] name=nginx repo baseurl=http://nginx.org/packages/rhel/7.1/$basearch/ gpgcheck=0 enabled=1
Installa Nginx usando yum
comando:
yum install nginx.x86_64
Al termine dell'installazione, avvia NGINX:
systemctl start nginx systemctl enable nginx
Configurazione Nginx.
Per configurare NGINX come server proxy, crea il file /etc/nginx/sites-available/mattermost
e passato:
upstream backend { server localhost:8065; } 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.mydomain.com; location /api/v3/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; proxy_read_timeout 600s; 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_pass http://backend; } }
Rimuovi il file predefinito esistente abilitato ai siti:
rm /etc/nginx/sites-enabled/default
Abilita la configurazione Mattermost:
ln -s /etc/nginx/sites-available/mattermost /etc/nginx/sites-enabled/mattermost
Infine, riavvia il servizio Nginx:
systemctl restart nginx
Passaggio 7. Accesso a Mattermost.
Mattermost sarà disponibile sulla porta HTTP 80 per impostazione predefinita. Apri il tuo browser preferito e vai a http://mattermost.mydomain.com/
e continua a configurare Mattermost inserendo un indirizzo email e creando un account. Se stai usando un firewall, apri la porta 80 per abilitare l'accesso al pannello di controllo.
Congratulazioni! Hai installato con successo Mattermost. Grazie per aver utilizzato questo tutorial per l'installazione di Mattermost sul sistema CentOS 7. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare il sito Web ufficiale di Mattermost.