云的博客 logo 云的博客

知识分享 经验总结 技术前沿

  1. Home
  2. Posts
  3. 手动部署 Mattermost 到 Ubuntu Server 20.04

手动部署 Mattermost 到 Ubuntu Server 20.04

Apr 17, 2025 bayview

ChatGPT Image 2026年1月7日 21_53_08.png

本文介绍如何在 Ubuntu Server 20.04 上手动部署 Mattermost,使用 PostgreSQL 13 作为数据库,并通过 systemd 管理服务进程。


1. 安装 PostgreSQL 13

更新系统并安装依赖

sudo apt update
sudo apt install curl gpg gnupg2 software-properties-common apt-transport-https lsb-release ca-certificates

添加 PostgreSQL 官方软件源

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg

echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

安装 PostgreSQL 13

sudo apt update && sudo apt install postgresql-13 postgresql-client-13

确认服务运行状态

systemctl status [email protected]

2. 初始化数据库

进入 PostgreSQL 交互终端,依次执行以下命令:

sudo -u postgres psql
CREATE DATABASE mattermostdb;
CREATE USER mmuser WITH PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE mattermostdb TO mmuser;
\q

⚠️ 请将 'password' 替换为强密码,不要在生产环境中使用示例密码。


3. 创建系统用户并部署 Mattermost

# 创建专用系统用户
sudo useradd --system --user-group mattermost

# 下载并解压 Mattermost
wget http://192.168.0.6:8082/Files/FTP/mattermost-10.7.0-linux-amd64.tar.gz
sudo tar -xf mattermost-10.7.0-linux-amd64.tar.gz

# 移动到标准目录并设置权限
sudo mv mattermost /opt/
sudo chown -R mattermost:mattermost /opt/mattermost

4. 配置 Mattermost

创建数据目录

sudo mkdir -p /opt/mattermost/data

编辑配置文件

sudo nano /opt/mattermost/config/config.json

找到并修改以下两处配置:

站点 URL

"ServiceSettings": {
  "SiteURL": "https://your_domain"
}

数据库连接

"SqlSettings": {
  "DriverName": "postgres",
  "DataSource": "postgres://mmuser:password@localhost/mattermostdb?sslmode=disable&connect_timeout=10&binary_parameters=yes"
}

将 your_domain 替换为实际域名,password 替换为第 2 步中设置的数据库密码。


5. 配置 systemd 服务

创建服务单元文件:

sudo nano /etc/systemd/system/mattermost.service

写入以下内容:

[Unit]
Description=Mattermost
After=network.target
After=postgresql.service
BindsTo=postgresql.service

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

[Install]
WantedBy=multi-user.target

6. 启动服务

# 重新加载 systemd 配置
sudo systemctl daemon-reload

# 设置开机自启并立即启动
sudo systemctl enable --now mattermost

# 查看运行状态
sudo systemctl status mattermost

若状态显示 Active: active (running),即表示部署成功。

🔒 后续建议:部署完成后,建议在前端配置 Nginx 反向代理并启用 HTTPS,以保障数据传输安全。

Table of Contents

  • 1. 安装 PostgreSQL 13
    • 更新系统并安装依赖
    • 添加 PostgreSQL 官方软件源
    • 安装 PostgreSQL 13
    • 确认服务运行状态
  • 2. 初始化数据库
  • 3. 创建系统用户并部署 Mattermost
  • 4. 配置 Mattermost
    • 创建数据目录
    • 编辑配置文件
  • 5. 配置 systemd 服务
  • 6. 启动服务

Recent Posts

  • 用python演示A星算法 Feb 1, 2026
  • 手动部署 Mattermost 到 Ubuntu Server 20.04 Apr 17, 2025
  • 在 Ubuntu Server 上部署 FTP 服务 Jul 9, 2024
  • LFS安装笔记本无线网卡驱动需要注意的几点问题 Jun 30, 2024
  • 为Typecho代码块添加一键复制按钮 Jun 28, 2024
← 在 Ubuntu Server 上部署 FTP 服务 用python演示A星算法 →
Powered by Hugo & Explore Theme.