Mattermost este o alternativă liberă, self-gazdată, a serviciului de mesagerie Slack SAAS. Cu alte cuvinte, cu Mattermost, puteți configura un server de mesagerie privat și dedicat pe propria mașină pentru echipa dvs.
Cerințe preliminare
- O instanță recent creată a serverului Vultr CentOS 7 x64. Spuneți că adresa IP este
203.0.113.1.
- Un utilizator sudo .
- Instanța serverului a fost actualizată la starea cea mai recentă stabilă utilizând repoziția EPEL YUM .
- Un domeniu
mattermost.example.comcare a fost configurat pentru a puncta 203.0.113.1instanța serverului. Puteți afla mai multe detalii despre acest lucru într-un alt tutorial Vultr .
- Pentru a obține în mod automat certificatul criptați Să ne, FQDN instanța de server ar fi fost configurat ca
mattermost.example.com.
După cum solicită Mattermost, trebuie să configurați o bază de date pentru a stoca toate datele pentru Mattermost. În acest scop, vom instala MariaDB.
Utilizați următoarele comenzi pentru a instala MariaDB 10.2.
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Securitatea MariaDB 10.2
sudo /usr/bin/mysql_secure_installation
Când vi se solicită, răspundeți la întrebări.
- Introduceți parola curentă pentru root (nu introduceți nimic): Apăsați
Enterbutonul
- Setați parola root? [Y / n]:
Y
- Parolă Nouă:
your-MariaDB-root-password
- Reintroduceți parola nouă:
your-MariaDB-root-password
- Ștergeți utilizatorii anonimi? [Y / n]:
Y
- Înlăturați conectarea root la distanță? [Y / n]:
Y
- Ștergeți baza de date de testare și accesați-o? [Y / n]:
Y
- Reîncărcați tabelele de privilegii acum? [Y / n]:
Y
Creați o bază de date MariaDB pentru Mattermost.
Conectați-vă la shell-ul MariaDB ca rădăcină.
mysql -u root -p
În shell-ul MariaDB, introduceți următoarele afirmații.
Notă: Din motive de securitate, asigurați - vă pentru a înlocui mattermost, mattermostuserși yourpasswordcu cele proprii.
CREATE DATABASE mattermost;
CREATE USER 'mattermostuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON mattermost.* TO 'mattermostuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Descărcați și extrageți arhiva Mattermost 4.1.
cd
wget https://releases.mattermost.com/4.1.0/mattermost-4.1.0-linux-amd64.tar.gz
tar -zxvf mattermost-4.1.0-linux-amd64.tar.gz
Mutați toate fișierele cele mai importante în /optdirector și apoi creați un subdirector /opt/mattermost/datapentru a stoca datele programului.
sudo mv ~/mattermost /opt
sudo mkdir /opt/mattermost/data
Creați un utilizator dedicat mattermostși un grup dedicat mattermostpentru rularea Mattermost.
sudo useradd --system --user-group mattermost
Modificați toate proprietățile și permisiunile fișierelor de program Mattermost.
sudo chown -R mattermost:mattermost /opt/mattermost
sudo chmod -R g+w /opt/mattermost
Pentru a configura un server Mattermost activat HTTPS, trebuie să efectuați modificări la configfișierul Mattermost .
sudo vi /opt/mattermost/config/config.json
Găsiți aceste rânduri, una câte una.
"SiteURL": "",
"ListenAddress": ":8065",
"ConnectionSecurity": "",
"UseLetsEncrypt": false,
"Forward80To443": false,
"DataSource": "mmuser:mostest@tcp(dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Înlocuiți-le cu rândurile de mai jos.
"SiteURL": "https://mattermost.example.com",
"ListenAddress": ":443",
"ConnectionSecurity": "TLS",
"UseLetsEncrypt": true,
"Forward80To443": true,
"DataSource": "mattermostuser:yourpassword@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Notă: În DataSourcelinie, trebuie să specificați secvențial numele de utilizator al bazei de date mattermostuser, parola corespunzătoare yourpassword, locația serverului bazei de date localhostși numele bazei de date mattermost.
Asigurați-vă că DriverNamelinia de deasupra DataSourceliniei utilizează valoarea implicită mysql.
"DriverName": "mysql",
Salvează și închide.
:wq!
Permiteți Mattermost să se lege la porturile privilegiate, adică 80 și 443.
cd /opt/mattermost/bin
sudo setcap cap_net_bind_service=+ep ./platform
Gestionează importanța cu systemd.
Creați un systemdfișier unitar de importanță.
cat <<EOF | sudo tee -a /etc/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=syslog.target network.target mysqld.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
EOF
Modificați permisiunile pentru acest systemdfișier de unitate.
sudo chmod 664 /etc/systemd/system/mattermost.service
Porniți serviciul Mattermost și faceți-l să pornească automat la pornirea sistemului.
sudo systemctl daemon-reload
sudo systemctl start mattermost.service
sudo systemctl enable mattermost.service
Permiteți accesul pe porturi httpși https.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload
În cele din urmă, îndreptați-vă browserul preferat către http://mattermost.example.comsau https://mattermost.example.com, și veți vedea Mattermost Sign Uppagina.
În Mattermost Sign Uppagină, introduceți email address, a username, și a password, apoi faceți clic pe Create Accountbutonul pentru a înregistra primul utilizator.
Notă: Rețineți că primul utilizator pe care l-ați înregistrat va fi și administratorul sistemului .
Pe Team Namepagina și Team URLpagina, introduceți a team nameși a URLpentru prima echipă.
Acum ați configurat cu succes un server de mesagerie Mattermost, care este suficient de robust pentru a servi o echipă mică sau mijlocie în mediul de producție. Nu ezitați să explorați interfața Mattermost și să invitați mai mulți membri ai echipei.