如何在Ubuntu 20.04上安裝Mattermost Chat

Mattermost是使用Golang和React編寫的免費,開源且自託管的在線聊天服務。 它是Slack的替代產品,並提供帶有文件共享,搜索和集成的聊天服務。 它是為組織和公司設計的,允許團隊從任何地方安全地進行通信和協作。 它提供了多種功能,包括一對一的消息傳遞,無限的搜索歷史記錄,共享和查看圖像文件,自定義表情符號,視頻通話,兩因素授權和通知。

在本教程中,我們將向您展示如何在Ubuntu 20.04上安裝Mattermost Chat。

先決條件

  • Ubuntu 20.04 VPS(我們將使用SSD 2 VPS計劃)
  • 訪問root用戶帳戶(或訪問具有root特權的管理員帳戶)

步驟1:登錄到服務器並更新服務器操作系統軟件包

首先,以root用戶身份通過​​SSH登錄到Ubuntu 20.04服務器:

ssh [email protected]_Address -p Port_number

您將需要用服務器各自的IP地址和SSH端口號替換“ IP_Address”和“ Port_number”。 此外,如有必要,將“ root”替換為管理員帳戶的用戶名。

在開始之前,您必須確保服務器上安裝的所有Ubuntu OS軟件包都是最新的。 您可以通過運行以下命令來執行此操作:

apt-get update -y
apt-get upgrade -y

步驟2:安裝和配置MariaDB

Mattermost使用MariaDB / MySQL作為數據庫後端。 因此,您將需要在服務器上安裝MariaDB服務器。 您可以通過運行以下命令來安裝它:

apt-get install mariadb-server

安裝MariaDB服務器之後,使用以下命令登錄MariaDB Shell:

mysql

登錄後,為Mattermost創建數據庫和用戶:

MariaDB [(none)]> CREATE DATABASE mattermostdb;
MariaDB [(none)]> CREATE USER 'mattermost'@'%' IDENTIFIED BY 'securepassword';

接下來,使用以下命令將所有特權授予Mattermost數據庫:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON mattermostdb.* TO 'mattermost'@'%';

接下來,使用以下命令清除特權並從MariaDB shell退出:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

現在,已為Mattermost安裝並配置了MariaDB數據庫。

第3步:安裝和設置Mattermost

首先,創建一個單獨的用戶和組以運行Mattermost。

useradd --system --user-group mattermost

接下來,使用以下命令下載最新版本的Mattermost:

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

下載完成後,使用以下命令解壓縮下載的文件:

tar -xvzf mattermost-5.28.1-linux-amd64.tar.gz

接下來,使用以下命令將提取的目錄移動到/ opt:

mv mattermost /opt/
mkdir /opt/mattermost/data

接下來,更改Mattermost的所有權和權限:

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

接下來,編輯Mattermost配置文件並定義您的站點URL和數據庫設置:

nano /opt/mattermost/config/config.json

用您的站點域名和數據庫設置更改以下幾行:

    "SiteURL": "http://mattermost.example.com",

    "DriverName": "mysql",
    "DataSource": "mattermost:[email protected](localhost:3306)/mattermostdb?charset=utf8mb4,utf8u0026readTimeout=30su0026writeTimeout=30s",

完成後保存並關閉文件。

步驟4:為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守護程序以應用配置更改:

systemctl daemon-reload

接下來,啟動Mattermost服務,並使其在系統重新引導時啟動:

systemctl start mattermost
systemctl enable mattermost

此時,Mattermost已啟動並正在偵聽端口8065。您可以使用以下命令進行驗證:

ss -plntu | grep 8065

輸出:

tcp   LISTEN 0      4096                                  *:8065              *:*                     users:(("mattermost",pid=3474,fd=17))                     

步驟5:將Nginx配置為反向代理

接下來,您需要將Nginx配置為Mattermost的反向代理。 首先,使用以下命令安裝Nginx服務器:

apt-get install nginx -y

安裝後,創建一個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.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;
   }
}

保存並關閉文件,然後激活Nginx虛擬主機文件:

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

最後,重新啟動Nginx服務以應用更改:

systemctl restart nginx

第6步:訪問最重要的內容

現在,打開您的Web瀏覽器並使用URL訪問Mattermost http://mattermost.example.com。 您將被重定向到以下頁面:

在Ubuntu 20.04指南上安裝最重要的聊天

提供您的電子郵件地址,用戶名,密碼,然後單擊“創建帳戶”按鈕。 您應該看到以下頁面:

在Ubuntu 20.04上安裝最重要的聊天指南

點擊 建立團隊 按鈕。 您應該看到以下頁面:

在Ubuntu 20.04步驟上安裝最重要的聊天

提供您的團隊名稱,然後點擊 下一個 按鈕。 您應該看到以下頁面:

在ubuntu 20.04簡易指南上安裝最重要的聊天

提供您的團隊網址,然後點擊 按鈕。 您應該看到Mattermost歡迎頁面:

在ubuntu 20.04上安裝最重要的聊天

點擊 跳過教程 按鈕。 您應該在以下頁面中看到Mattermost儀錶板:

在ubuntu 20.04上安裝即時聊天的簡單步驟

而已。 Mattermost已成功安裝在您的Ubuntu 20.04服務器中。

當然,如果您使用我們的Linux VPS託管服務之一,則無需執行任何操作,在這種情況下,您只需要求我們的專業Linux管理員為您進行設置即可。 它們全天候24×7可用,將立即處理您的要求。

PS。 如果您喜歡此帖子,請使用左側的按鈕在社交網絡上與您的朋友分享,或者在下面留下您的答覆。 謝謝。

Sidebar