Запуск сервера

Это руководство предназначено для системных администраторов, устанавливающих и эксплуатирующих сервер Antimatter. Предполагается, что вы знакомы с Linux, Docker и обратными прокси, но не с Antimatter.

Компоненты развёртывания

Antimatter — это self-hosted командный чат, форк Mattermost. Полное развёртывание состоит из следующих частей. Только первые три являются обязательными.

КомпонентНазначениеОбязательность
Сервер AntimatterОдна программа на Go (antimatter), которая обслуживает веб-приложение, API и веб-сокеты на порту 8065, запускает встроенные приложения (плагины) и передаёт медиа для звонков на порту 8443. Управляется командной утилитой amctl.да
PostgreSQLБаза данных: сообщения, пользователи, сообщества и, в рекомендуемой конфигурации, настройки сервера. Версия 15 или новее.да
Файловое хранилищеЗагруженные файлы, изображения и установленные приложения: S3-совместимый сервис (в compose-файле используется RustFS) или локальная директория.да
Обратный проксиHTTPS перед сервером: профиль Caddy из compose-файла или ваш собственный nginx.для продакшена
Сервис GIF (gifs-server)GIF и наклейки для выбора GIF из собственного каталога. Использует Tenor API.нет
Прокси для push-уведомленийПеренаправляет уведомления в мобильное приложение через Apple и Google.для мобильных уведомлений
rtcd, TURN-серверОтдельный медиа-сервер для множества звонков и ретранслятор для пользователей за строгими файрволами.нет
AI-эндпоинтыМодели, обеспечивающие переписывание, краткие изложения, перевод, озвучивание, ИИ-агентов и транскрипцию звонков, добавляются как подключения моделей: облачный провайдер или собственные серверы.нет

Antimatter не имеет лицензионных ограничений и платной редакции: единый вход, LDAP, высокая доступность, экспорт для соответствия требованиям, удержание данных и другие функции, которые Mattermost оставляет для платных тарифов, включены в базовую версию.

Требования

  • Сервер на Linux, amd64 или arm64, с 2 ядрами CPU и 4 ГБ памяти или более для нескольких сотен пользователей, а также дисковым пространством для загружаемых файлов.
  • Docker Engine с плагин Compose (docker compose) для рекомендуемого способа установки. Или, для пакетов, сервер на базе Debian, Ubuntu, Fedora или RHEL с systemd.
  • Для продакшена: доменное имя, указывающее на сервер, и открытые порты 80 и 443 для HTTPS.
  • Для звонков: порт 8443 (UDP и TCP), доступный для звонящих.
  • Для электронной почты: SMTP-сервер, через который Antimatter может отправлять письма.

Быстрый старт

mkdir antimatter && cd antimatter
curl -fsSLO https://antimatter.chat/compose.yaml
cat > .env <<EOF
SITE_URL=http://localhost:8065
POSTGRES_PASSWORD=$(openssl rand -hex 24)
S3_SECRET_KEY=$(openssl rand -hex 24)
GIFS_API_KEY=$(openssl rand -hex 24)
AM_AI_ENCRYPTION_KEY=$(openssl rand -base64 32)
EOF
docker compose up -d

Затем откройте URL сайта и создайте свой аккаунт: первый аккаунт становится системным администратором. Раздел Установка описывает каждый шаг и другие способы установки.

В этом руководстве

Вы управляете сообществом, а не сервером (каналы, роли, модерация)? См. Управление сообществом. Разрабатываете интеграции? См. Разработка на Antimatter.

Первый час

  1. Установите систему и сразу создайте аккаунт администратора.
  2. Разместите сервер за HTTPS на собственном домене.
  3. Настройте SMTP и отправьте тестовое письмо.
  4. Откройте порт для звонков. Для компании установите тип новых сообществ в значение Компания, чтобы звонки были доступны в каналах.
  5. Определите, кто может регистрироваться, и включите MFA.
  6. Проверьте внешние соединения в разделе Безопасность.
  7. Настройте ежедневное резервное копирование. Перед добавлением подключений моделей ИИ установите ключ шифрования ИИ.

Получение помощи

Задавайте вопросы в обсуждениях сообщества и сообщайте об ошибках в репозитории сообщества. О проблемах безопасности сообщайте конфиденциально, как описано в политике безопасности.