Si të instaloni Mattermost në Debian 11
Mattermost është një platformë bashkëpunimi dhe mesazhesh falas dhe me burim të hapur e krijuar duke pasur parasysh sigurinë. Është një alternativë ndaj Discord ose Slack dhe ofron shumë veçori të dobishme, duke përfshirë, mesazhe një për një, histori të pakufizuar kërkimi dhe aftësi për ndarjen e skedarëve, autorizim me dy faktorë dhe njoftime. Është një shërbim i vetë-pritur i bisedës në internet i shkruar në Golang dhe React. Është projektuar posaçërisht për organizata dhe kompani dhe lejon ekipet të komunikojnë në mënyrë të sigurt nga kudo.
Në këtë tutorial, ne do t'ju tregojmë se si të instaloni serverin Mattermost Chat në Debian 11.
Parakushtet
- Një server që ekzekuton Debian 11.
- Një emër i vlefshëm domeni i treguar me IP-në e serverit tuaj.
- Një fjalëkalim rrënjësor është konfiguruar në server.
Instaloni dhe konfiguroni serverin e bazës së të dhënave MariaDB
Mattermost përdor MySQL ose MariaDB si një bazë të dhënash. Kështu që do t'ju duhet të instaloni serverin MariaDB në serverin tuaj. Mund ta instaloni duke përdorur komandën e mëposhtme:
apt-get install mariadb-server -y
Pasi të instalohet MariaDB, filloni shërbimin MariaDB dhe aktivizoni atë të fillojë në rindezjen e sistemit:
systemctl start mariadb
systemctl enable mariadb
Tjetra, lidheni me guaskën MariaDB me komandën e mëposhtme:
mysql
Pasi të jeni lidhur, krijoni një bazë të dhënash dhe përdorues me komandën e mëposhtme:
MariaDB [(none)]> create database mattermost;
MariaDB [(none)]> create user identified by 'password';
Më pas, jepni të gjitha privilegjet për bazën e të dhënave Mattermost me komandën e mëposhtme:
MariaDB [(none)]> grant all privileges on mattermost.* to ;
Më pas, lani privilegjet dhe dilni nga guaska MariaDB me komandën e mëposhtme:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Pasi të keni mbaruar, mund të vazhdoni në hapin tjetër.
Instaloni Mattermost
Së pari, krijoni një përdorues të dedikuar për Mattermost duke përdorur komandën e mëposhtme:
useradd --system --user-group mattermost
Më pas, shkarkoni versionin më të fundit të Mattermost me komandën e mëposhtme:
wget https://releases.mattermost.com/6.0.2/mattermost-6.0.2-linux-amd64.tar.gz
Pasi të përfundojë shkarkimi, nxirrni skedarin e shkarkuar me komandën e mëposhtme:
tar -xvzf mattermost-6.0.2-linux-amd64.tar.gz
Më pas, zhvendosni direktorinë e nxjerrë në /opt me komandën e mëposhtme:
mv mattermost /opt
Më pas, krijoni një drejtori të dhënash për çështjen më të madhe duke përdorur komandën e mëposhtme:
mkdir /opt/mattermost/data
Tjetra, ndryshoni pronësinë e direktorisë mattermost me komandën e mëposhtme:
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Më pas, modifikoni skedarin config.json me komandën e mëposhtme:
nano /opt/mattermost/config/config.json
Gjeni linjat e mëposhtme:
"DriverName": "postgres",
"DataSource": "postgres://mmuser:/mattermost_test?sslmode=disable&connect_timeout=10",
Dhe, i zëvendësoi ato me linjat e mëposhtme sipas cilësimeve të bazës së të dhënave tuaja:
"DriverName": "mysql",
"DataSource": "mattermost:(127.0.0.1:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Ruani dhe mbyllni skedarin kur të keni mbaruar.
Krijoni një skedar të shërbimit Systemd për Mattermost
Më pas, do t'ju duhet të krijoni një skedar shërbimi systemd për Mattermost. Mund ta krijoni duke përdorur komandën e mëposhtme:
nano /etc/systemd/system/mattermost.service
Shtoni rreshtat e mëposhtëm:
[Unit]
Description=Mattermost
After=syslog.target network.target mysqld.service
[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/spool/mattermost/pid/master.pid
TimeoutStartSec=3600
LimitNOFILE=49152
[Install]
WantedBy=multi-user.target
Ruani dhe mbyllni skedarin dhe më pas rifreskoni daemonin e sistemit për të aplikuar ndryshimet:
systemctl daemon-reload
Më pas, nisni Mattermost-in dhe aktivizoni atë të fillojë në rindezjen e sistemit:
systemctl start mattermost
systemctl enable mattermost
Më pas, verifikoni statusin e Mattermost me komandën e mëposhtme:
systemctl status mattermost
Do të merrni daljen e mëposhtme:
? mattermost.service - Mattermost
Loaded: loaded (/etc/systemd/system/mattermost.service; disabled; vendor preset: enabled)
Active: active (running) since Fri 2021-11-12 13:56:25 UTC; 4s ago
Main PID: 2888 (mattermost)
Tasks: 31 (limit: 4679)
Memory: 273.3M
CPU: 12.191s
CGroup: /system.slice/mattermost.service
??2888 /opt/mattermost/bin/mattermost
??2915 plugins/com.mattermost.plugin-channel-export/server/dist/plugin-linux-amd64
??2925 plugins/playbooks/server/dist/plugin-linux-amd64
??2931 plugins/focalboard/server/dist/plugin-linux-amd64
Nov 12 13:56:24 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:24.681 Z","level":"info","msg":"Scheduling next survey for Dec 3, 2>
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.064 Z","level":"info","msg":"Post.Message has size restrictions">
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.084 Z","level":"info","msg":"info [2021-11-12 13:56:25.083 Z] co>
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.131 Z","level":"info","msg":"\n -- collation of mattermost's >
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.491 Z","level":"info","msg":"debug [2021-11-12 13:56:25.488 Z] i>
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.777 Z","level":"info","msg":"info [2021-11-12 13:56:25.777 Z] Se>
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.963 Z","level":"info","msg":"Starting Server...","caller":"app/s>
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.964 Z","level":"info","msg":"Server is listening on [::]:8065",">
Nov 12 13:56:25 debian11 mattermost[2888]: {"timestamp":"2021-11-12 13:56:25.964 Z","level":"info","msg":"Sending systemd READY notification.>
Nov 12 13:56:25 debian11 systemd[1]: Started Mattermost.
Konfiguro Nginx si një përfaqësues të kundërt për Mattermost
Si parazgjedhje, Mattermost dëgjon në portin 8065. Kështu që është një ide e mirë të instaloni dhe konfiguroni Nginx si një përfaqësues të kundërt për të hyrë në Mattermost në portin 80. Së pari, instaloni Nginx me komandën e mëposhtme:
apt-get install nginx -y
Pasi të instalohet Nginx, krijoni një skedar konfigurimi të hostit virtual Nginx me komandën e mëposhtme:
nano /etc/nginx/conf.d/mattermost.conf
Shtoni rreshtat e mëposhtëm:
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.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://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;
}
}
Ruani dhe mbyllni skedarin dhe më pas verifikoni konfigurimin Nginx për çdo gabim sintaksor me komandën e mëposhtme:
nginx -t
Ju duhet të shihni daljen e mëposhtme:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Tjetra, filloni shërbimin Nginx për të aplikuar ndryshimet:
systemctl start nginx
Ju gjithashtu mund të verifikoni statusin e Nginx duke përdorur komandën e mëposhtme:
systemctl status nginx
Ju duhet të merrni daljen e mëposhtme:
? nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-11-12 13:57:02 UTC; 1min 12s ago
Docs: man:nginx(8)
Process: 3384 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 3392 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 3602 (nginx)
Tasks: 3 (limit: 4679)
Memory: 6.6M
CPU: 55ms
CGroup: /system.slice/nginx.service
??3602 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
??3604 nginx: worker process
??3605 nginx: worker process
Nov 12 13:57:01 debian11 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 12 13:57:02 debian11 systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Nov 12 13:57:02 debian11 systemd[1]: Started A high performance web server and a reverse proxy server.
Në këtë pikë, Nginx është instaluar dhe konfiguruar si një përfaqësues i kundërt për Mattermost. Tani mund të vazhdoni në hapin tjetër.
Hyni në ndërfaqen e internetit Mattermost
Tani, hapni shfletuesin tuaj të internetit dhe hyni në ndërfaqen e internetit Mattermost duke përdorur URL-në http://mattermost.example.com. Do të ridrejtoheni në faqen e mëposhtme:
![](common-images/how-to-install-mattermost-on-debian-11/p1.png)
Jep adresën e emailit të administratorit, emrin e përdoruesit, fjalëkalimin dhe kliko në butonin Krijo Llogari. Ju duhet të shihni faqen e mëposhtme:
![](common-images/how-to-install-mattermost-on-debian-11/p2.png)
Tani, klikoni në Shko te Paneli i Sistemit. Do të ridrejtoheni te paneli i kontrollit Mattermost siç tregohet më poshtë:
![](common-images/how-to-install-mattermost-on-debian-11/p3.png)
konkluzioni
urime! ju keni instaluar me sukses Mattermost-in me Nginx si një përfaqësues të kundërt në Debian 11. Tani mund ta zbatoni Mattermost-in në organizatën tuaj dhe t'i lejoni ekipet të komunikojnë me njëri-tjetrin nga kudo.