Способи оплати Abuse

Встановлення та налаштування Mattermost сервера на Ubuntu 24.04: докладний посібник.

  • Головна
  • База знань
  • Встановлення та налаштування Mattermost сервера на Ubuntu 24.04: докладний посібник.
11.10.2024, 13:59

Mattermost - це платформа для корпоративного спілкування з відкритим вихідним кодом, призначена для внутрішньої комунікації команд і організацій. Вона підтримує текстові чати, обмін файлами, відеодзвінки та інтеграцію з різними сторонніми сервісами. Mattermost може бути розгорнуто на власних серверах для повного контролю над даними та забезпечення безпеки. Це альтернатива таким рішенням, як Slack, з можливістю налаштування, автоматизації та інтеграції з DevOps-процесами.

Вимоги

  1. Віртуальний сервер (VPS) зі встановленою Ubuntu 24.04.
  2. Права root або обліковий запис із sudo.
  3. (Опціонально) Ми настійно рекомендуємо використовувати проксі-сервер перед Mattermost для підтримки до 200 одночасних користувачів. Якщо у вас менше 200 одночасних користувачів, ви можете налаштувати TLS. Якщо кількість одночасних користувачів перевищує 200, вам знадобиться проксі-сервер, такий як NGINX, перед Mattermost для керування трафіком.

Крок 1. Вхід на сервер через SSH.

Для початку вам потрібно підключитися до вашого сервера через SSH під користувачем root. Виконайте таку команду, замінивши IP_Address на IP-адресу вашого сервера, а Port_number - на номер порту SSH:

ssh root@IP_Address -p Port_number

Щоб переконатися, що у вас встановлена правильна версія Ubuntu, виконайте команду:

lsb_release -a

Очікуваний результат:

Distributor ID: Ubuntu
Description:     Ubuntu 24.04 LTS
Release:            24.04
Codename:      noble

Крок 2. Встановлення та налаштування бази даних.

Оновлюємо ОС:

apt update
apt upgrade

Тепер створимо базу даних PostgreSQL для використання сервером Mattermost. Введіть команду (ця команда встановить postgresql):

apt install postgresql

Заходимо в PostgreSQL:

sudo -u postgres psql

Створюємо базу Mattermost:

CREATE DATABASE mattermost;

Створюємо користувача mmuser (замість пароля mmuser-password використовуємо більш захищений пароль):

CREATE USER mmuser WITH PASSWORD 'mmuser-password';

Наділяємо користувача mmuser правами:

GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;
GRANT ALL ON DATABASE mattermost TO mmuser;
ALTER DATABASE mattermost OWNER TO mmuser;
GRANT USAGE, CREATE ON SCHEMA PUBLIC TO mmuser;

Виходимо з PostgreSQL

q

Вносимо зміни у файл pg_hba.conf, надаючи Mattermost серверу доступ до бази PostgreSQL.
Відкриваємо файл:

nano /etc/postgresql/16/main/pg_hba.conf

Знаходимо рядки:

local   all             all                                                  peer
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             ::1/128                       scram-sha-256

Замінюємо на:

local   all             all                                                  trust
host    all             all             127.0.0.1/32            trust
host    all             all             ::1/128                       trust

Зберігаємо зміни, закриваємо файл і оновлюємо конфігурацію PostgreSQL:

systemctl reload postgresql

Перевіряємо, що можемо підключитися до бази від користувача mmuser:

psql --dbname=mattermost --username=mmuser --password

Вводимо пароль, який ми створили замість mmuser-password

Якщо ми все зробили правильно - з'явиться консоль PostgreSQL mattermost=>

Виходимо:

q

Крок 3. Завантаження та встановлення Mattermost сервера.

Завантажуємо останню версію Mattermost сервера:

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

Розпаковуємо:

tar -xvzf mattermost*.gz

Переносимо в директорію /opt:

mv mattermost /opt

За замовчуванням Mattermost сервер використовує директорію /opt/mattermost/data

Створюємо її:

mkdir /opt/mattermost/data

Тепер створимо групу і користувача mattermost:

useradd --system --user-group mattermost

Надамо права:

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

Крок 4. Створення системного сервісу.

Щоб керувати сервером Mattermost, створимо системний сервіс.

Відкрийте редактор для створення файлу сервісу:

nano /lib/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

Оновлюємо конфігурацію systemd:

systemctl daemon-reload

Перед запуском Mattermost сервера, необхідно сконфігурувати його.

Створіть резервну копію конфігураційного файлу:

cp /opt/mattermost/config/config.json /opt/mattermost/config/config.defaults.json

Відкрийте в текстовому редакторі файл конфігурації Mattermost сервера:

nano /opt/mattermost/config/config.json

Нам необхідно внести зміни.

Знайдіть:

"DataSource": "postgres://mmuser:@localhost/mattermost_test?sslmode=disableu0026connect_timeout=10u0026binary_parameters=yes"

Замініть на:

"DataSource to "postgres://mmuser: <mmuser-password>@<host-name-or-IP>:5432/<mattermost>?sslmode=disable&connect_timeout=10"

Де

<mmuser-password> - пароль mmuser для PostgreSQL.

<host-name-or-IP> - IP адреса сервера або його hostname.

<mattermost> - база PostgreSQL.

Збережіть файл і вийдіть із редактора.

Активуйте сервіс, щоб він запускався під час старту системи, і запустіть його зараз:

systemctl enable --now mattermost

Для перевірки статусу сервера використовуйте команду:

systemctl status mattermost

Крок 5. Підключення до сервера Mattermost.

Відкрийте в браузері <IP адресу вашого сервера або його hostname>: 8065

Дотримуйтесь інструкцій на сторінці, що відкрилася.

Висновок

Тепер Mattermost сервер встановлено і працює на вашому сервері Ubuntu 24.04.