欢迎光临
让更多人用上统信UOS系统

如何在 Debian 11 上安装 Mattermost

Mattermost 是一个自托管的开源在线聊天服务,旨在用作公司的内部聊天平台和组织。它提供了团队之间的安全通信以及个人和团体之间的更轻松的协作。Mattermost 在开发人员之间提供数据,允许他们访问源代码并在不同位置直接为其贡献代码,因为它是基于云的。matermost-logo

在 Debian 11 Bullseye 上安装 Mattermost

apt第 1 步。在我们安装任何软件之前,通过在终端中运行以下命令来确保您的系统是最新的,这一点很重要:

sudo apt update
sudo apt upgrade

步骤 2. 安装 LEMP 堆栈。

需要 Debian 11 LEMP 服务器。如果您没有安装 LAMP,请阅读我们之前的教程以在 Debian 11 上安装 LEMP 服务器

步骤 3. 为 Mattermost 配置 MariaDB。

默认情况下,MariaDB 未加固。mysql_secure_installation您可以使用脚本保护 MariaDB 。您应该仔细阅读以下每个步骤,这些步骤将设置 root 密码、删除匿名用户、禁止远程 root 登录、删除测试数据库和访问安全 MariaDB:

mysql_secure_installation

像这样配置它:

- 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

接下来,我们需要登录 MariaDB 控制台并为 Mattermost 创建一个数据库。运行以下命令:

mysql -u root -p

这将提示您输入密码,因此请输入您的 MariaDB 根密码并按 Enter。登录到数据库服务器后,您需要为 Mattermost 安装创建一个数据库:

MariaDB [(none)]> CREATE DATABASE mattermost_db;
MariaDB [(none)]> CREATE USER 'mattermost_user' IDENTIFIED BY 'your-strong-password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mattermost_db.* TO 'mattermost_user';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

步骤 4. 在 Debian 11 上安装 Mattermost。

在安装 Mattermost 之前,创建一个新的用户和组来运行我们的 Mattermost 服务器:

sudo useradd --system --user-group mattermost

默认情况下,Mattermost 在 Debian 11 基础存储库中不可用。所以,现在我们从官方页面下载最新的稳定版 Mattermost:

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

接下来,解压下载的文件:

tar xvzf mattermost-6.0.2-linux-amd64.tar.gz -C /opt/
sudo mkdir /opt/mattermost/data

我们将需要更改一些文件夹权限:

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

步骤 5. 配置 Mattermost。

现在我们必须在 Mattermost 配置中定义某些参数。编辑 Mattermost 配置文件并定义您的站点 URL 和数据库设置:

nano /opt/mattermost/config/config.json

更改以下行:

"SiteURL": "http://mattermost.your-domian.com", 
"DriverName": "MySQL", 
"DataSource": "mmuser:your-strong-passwdD@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",

步骤 6. 为 Mattermost 创建一个 Systemd 服务文件。

我们将设置systemd一个服务来启动和停止 Mattermost 服务:

nano /lib/systemd/system/mattermost.service

添加以下行:

[Unit]
Description=Mattermost
After=network.target
After=mysql.service
Requires=mysql.service

[Service]
Type=notify
User=mattermost
Group=mattermost
ExecStart=/opt/mattermost/bin/mattermost
TimeoutStartSec=3600
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
LimitNOFILE=49152

[Install]
WantedBy=mariadb.service

保存并关闭文件,然后重新加载systemd守护程序以应用配置更改:

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

步骤 6. 将 Nginx 配置为反向代理。

现在使用以下命令创建一个 Nginx 虚拟主机配置文件:

nano /etc/nginx/sites-available/mattermost.conf

添加以下行:

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.your-domain;

   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 65;
       send_timeout 200;
       lingering_timeout 5;
       proxy_connect_timeout 80;
       proxy_send_timeout 300;
       proxy_read_timeout 80s;
       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;
   }
}

保存并关闭文件,然后使用以下命令激活虚拟主机配置:

ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.conf
sudo systemctl restart nginx

步骤 7. 使用 Let’s Encrypt SSL 保护 Mattermost。

首先,使用以下命令将 Certbot 安装到您的 Debian 系统:

sudo apt install certbot python3-certbot-nginx

然后,使用以下命令生成证书:

certbot --nginx -d mattermost.your-domian.com

然后将提示您输入证书的电子邮件地址。输入后,您必须同意 T&C 并决定是否要与电子前沿基金会共享您的电子邮件地址。最后一步是可选的。成功后,再次重新加载 Apache 以加载所有新配置。

步骤 8. 访问 Mattermost Web 界面。

成功安装后,打开您的 Web 浏览器并输入 URL以访问 Mattermost Web UI。您应该看到以下屏幕:https://mattermost.your-domian.com

mattermost-web-interface

感谢您使用本教程安装最新版本的 Mattermost 开源平台,以便在 Debian 11 Bullseye 上进行开发人员协作。如需其他帮助或有用信息,我们建议您查看Mattermost 官方网站

赞(0) 打赏
未经允许不得转载:统信UOS之家 » 如何在 Debian 11 上安装 Mattermost

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏