| Смотрите также |
|---|
| Debian-like |
Mattermost — это популярная платформа для командного общения с открытым исходным кодом, которая может быть развернута на вашем собственном сервере. В этом руководстве мы рассмотрим, как установить Mattermost на AlmaLinux 8/9 и CentOS Stream 9, настроить базу данных MariaDB и обеспечить доступ к веб-интерфейсу.
Протестировано на:
Almalinux: 8 | 9
CentOS Stream: 9|10
1. Установка базы данных (MariaDB)
Mattermost использует MySQL или MariaDB в качестве базы данных. В этом примере мы будем использовать MariaDB.
Шаг 1: Обновление системы и установка MariaDB
Обновите систему и установите MariaDB:
sudo dnf update -y
sudo dnf install mariadb-server -yШаг 2: Запуск и настройка MariaDB
Запустите службу MariaDB и добавьте её в автозагрузку:
sudo systemctl start mariadb
sudo systemctl enable mariadbШаг 3: Настройка базы данных
Подключитесь к консоли MariaDB:
sudo mysqlСоздайте базу данных и пользователя для Mattermost:
CREATE DATABASE mattermost;
CREATE USER 'mattermost'@'localhost' IDENTIFIED BY 'ваш_пароль';
GRANT ALL PRIVILEGES ON mattermost.* TO 'mattermost'@'localhost';
FLUSH PRIVILEGES;
EXIT;2. Установка Mattermost
Шаг 1: Создание пользователя для Mattermost
Создайте системного пользователя для Mattermost:
sudo useradd --system --user-group mattermostШаг 2: Загрузка и распаковка Mattermost
Загрузите последнюю версию Mattermost:
wget https://releases.mattermost.com/10.6.0/mattermost-enterprise-10.6.0-linux-amd64.tar.gzРаспакуйте архив:
tar -xvzf mattermost-enterprise-10.6.0-linux-amd64.tar.gzПереместите файлы в каталог /opt:
sudo mv mattermost /optШаг 3: Настройка каталогов и прав
Создайте каталог для данных и установите права:
sudo mkdir /opt/mattermost/data
sudo chown -R mattermost:mattermost /opt/mattermost/
sudo chmod -R g+w /opt/mattermost/Шаг 4: Настройка конфигурации
Отредактируйте файл конфигурации /opt/mattermost/config/config.json. Найдите строки:
"DriverName": "postgres",
"DataSource": "postgres://mmuser:mostest@localhost/mattermost_test?sslmode=disable\u0026connect_timeout=10",Измените их на:
"DriverName": "mysql",
"DataSource": "mattermost:ваш_пароль@tcp(127.0.0.1:3306)/mattermost?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",Сохраните и закройте файл.
3. Создание systemd-юнита для Mattermost
Создайте файл юнита /etc/systemd/system/mattermost.service:
sudo vim /etc/systemd/system/mattermost.serviceДобавьте следующее содержимое:
[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Сохраните файл и перезагрузите демон systemd:
sudo systemctl daemon-reloadЗапустите службу Mattermost и добавьте её в автозагрузку:
sudo systemctl start mattermost
sudo systemctl enable mattermostПроверьте статус службы:
sudo systemctl status mattermostПримерный вывод:

Примечание: Проблемы с SELinux
Если служба не запускается из-за ошибки Permission Denied, выполните следующие команды:
sudo semanage fcontext -a -t bin_t "/opt/mattermost/bin(/.*)?"
sudo restorecon -RF /opt/mattermost/bin4. Открытие портов в firewall
Mattermost по умолчанию использует порт 8065 для веб-интерфейса. Если вы используете Nginx в качестве обратного прокси, также потребуется открыть порт 80 (HTTP) или 443 (HTTPS).
Шаг 1: Открытие порта 8065
Откройте порт 8065 в firewall:
sudo firewall-cmd --zone=public --add-port=8065/tcp --permanentШаг 2: Открытие портов для Nginx (опционально)
Если вы используете Nginx, откройте порты 80 и 443:
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanentШаг 3: Применение изменений
Перезагрузите firewall для применения изменений:
sudo firewall-cmd --reloadПроверьте открытые порты:
sudo firewall-cmd --list-ports
4. Доступ к веб-интерфейсу Mattermost
Mattermost по умолчанию прослушивает порт 8065. Откройте веб-браузер и перейдите по адресу:
http://ваш_IP_адрес:8065
Вы должны будете увидеть следующую страницу.

Шаг 1: Настройка администратора
На странице приветствия укажите:
- Адрес электронной почты администратора.
- Имя пользователя.
- Пароль.
Нажмите Create Account и следуйте инструкциям на экране.
Шаг 2: Настройка обратного прокси (опционально)
Для доступа к Mattermost через порт 80 или 443 рекомендуется настроить Nginx в качестве обратного прокси. Пример конфигурации Nginx:
server {
listen 80;
server_name ваш_домен;
location / {
proxy_pass http://127.0.0.1:8065;
proxy_set_header Host $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;
}
}Сохраните конфигурацию и перезапустите Nginx:
sudo systemctl restart nginxЗаключение
Вы успешно установили Mattermost на RHEL-like дистрибутив, открыли необходимые порты в firewall и настроили доступ к веб-интерфейсу. Теперь вы можете использовать эту платформу для командного общения. Если у вас возникнут вопросы или проблемы, оставляйте комментарии ниже.

Пробовали ли вы устанавливать Mattermost? Поделитесь своим опытом в комментариях!
Было ли это полезно?
0 / 0