在本文中,我们将向您展示如何在CentOS 8上安装Mattermost。
步骤1.首先,让我们首先确保您的系统是最新的。
sudo dnf clean all
sudo dnf install epel-release
sudo dnf update
步骤2.安装数据库服务器。
运行以下命令以安装MariaDB:
sudo dnf install mariadb-server
默认情况下,不会对MariaDB进行加固。您可以使用mysql_secure_installation脚本保护MariaDB 。您应该仔细阅读每个步骤,并在每个步骤下面仔细进行操作,这将设置root密码,删除匿名用户,禁止远程root登录以及删除测试数据库并访问安全的MariaDB:
mysql_secure_installation
然后,重新启动MariaDB数据库服务器,并使用以下命令使它能够在系统启动时启动:
sudo systemctl restart mariadb
sudo systemctl status mariadb
sudo systemctl enable mariadb
安装数据库后,登录到MariaDB shell,并为Mattermost创建数据库和用户:
$ mysql -u root -p
CREATE DATABASE mattermost;
GRANT ALL PRIVILEGES ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'Your-Strong-Passwd';
FLUSH PRIVILEGES;
QUIT;
步骤3.在CentOS 8上安装Mattermost。
首先,您需要创建一个单独的用户来运行Mattermost。您可以使用以下命令创建它:
sudo useradd -d /opt/mattermost -U -M mattermost
接下来,下载Mattermost的最新版本:
wget https://releases.mattermost.com/5.20.2/mattermost-5.20.2-linux-amd64.tar.gz
将Mattermost归档文件解压缩到服务器上的文档根目录:
tar xf *.gz
mv mattermost /opt/
创建文件的存储目录:
mkdir /opt/mattermost/data
另外,设置所有权和权限:
sudo chown -R mattermost:mattermost /opt/mattermost
sudo chmod -R g+w /opt/mattermost
接下来,我们必须/opt/mattermost/config/config.json通过对其内容进行一些更改来在文件中设置数据库驱动程序。搜索“ DriverName ”和“ DataSource ”行,并进行如下更改:
nano /opt/mattermost/config/config.json
"SqlSettings": {
"DriverName": "mysql",
"DataSource": "mattermost:Str0ngP@ss@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8u0026readTimeout=30su0026writeTimeout=30s",
"DataSourceReplicas": [],
"DataSourceSearchReplicas": [],
"MaxIdleConns": 20,
"ConnMaxLifetimeMilliseconds": 3600000,
"MaxOpenConns": 300,
"Trace": false,
"AtRestEncryptKey": "myyti1r597i99qrk7eu91ywqhaawz4md",
"QueryTimeout": 30
},
保存并关闭文件。然后,将目录更改为/opt/mattermost并使用以下命令启动Mattermost服务器:
cd /opt/mattermost
sudo -u mattermost ./bin/mattermost
步骤4.配置Mattermost Systemd服务。
首先,我们将使用以下命令创建一个新的systemd单位文件:
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
接下来,启动Mattermost服务,并使用以下命令使它在系统重启后启动:
sudo systemctl daemon-reload
sudo systemctl start mattermost.service
sudo systemctl enable mattermost.service
验证Mattermost是否正在运行并且正在侦听端口8065。您可以使用以下命令进行检查:
curl http://localhost:8065
步骤5.使用Mattermost配置Nginx。
安装Nginx并将其配置为反向代理,以提高性能和安全性。现在我们在CentOS系统上安装Nginx:
sudo dnf install nginx
安装Nginx Web服务器后,启动Nginx服务,并使用以下命令使其在系统重启后启动:
sudo systemctl start nginx
sudo systemctl enable nginx
然后,将Nginx Web服务器配置为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;
}
}
最后,重新启动Nginx服务以应用更改:
nginx -t
sudo systemctl restart nginx
步骤6.配置防火墙。
允许防火墙访问http和https端口:
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
步骤7.访问Mattermost Web界面。
默认情况下,Mattermost将在HTTP端口80上可用。打开您喜欢的浏览器,然后http://mattermost.example.com通过输入电子邮件地址并创建一个帐户导航到并继续配置Mattermost。
恭喜你!您已经成功安装了Mattermost。感谢您使用本教程在CentOS 8系统上安装Mattermost。A5互联https://www.a5idc.net/