Установка Rocket.Chat через Docker на свой сервер: термины и чек-лист

Подробности, цифры, термины и чек-лист по теме «Установка Rocket.Chat через Docker на свой сервер». Страница справочника целиком: Rocket.Chat Docker Compose.

Коротко о теме

Rocket.Chat Docker Compose из репозитория разработчика: Traefik с Let's Encrypt, MongoDB, приложения для телефонов, push-шлюз и копии базы.

Подробности по разделам

Что такое Rocket.Chat и когда вместо него брать Zulip

Видеозвонки сервер ведёт через Jitsi: в настройках видеоконференций администратор вписывает домен своего Jitsi Meet вместо публичного. Сравнение с Mattermost и Matrix есть в подборке self hosted мессенджеров. Zulip решает другую задачу.

Сколько ресурсов и портов нужно Rocket.Chat на сервере

Отметьте размер команды, мониторинг и поток вложений

Как установить Rocket.Chat через Docker Compose по шагам

Сразу после запуска смените пароль администратора Grafana или уберите панель из набора, если мониторинг вам не нужен.

Домен и HTTPS для Rocket.Chat: Traefik из набора или свой прокси

Чат держит живое соединение на веб-сокетах: Caddy проксирует их без настроек, а в Nginx для них добавляют заголовки Upgrade и Connection.

Мобильное приложение Rocket.Chat и push-уведомления на своём сервере

Подключается он регистрацией рабочего пространства в Rocket.Chat Cloud, под неё в.env предусмотрена переменная REG_TOKEN. Прочитайте условия шлюза и решите заранее, готова ли команда к такой внешней зависимости. Единый вход сотрудников подключают через OpenID Connect, например к Keycloak.

Копии MongoDB и обновление Rocket.Chat без потери вложений

Снимайте дамп командой mongodump из контейнера базы по расписанию и уносите его с сервера: схемы описаны в разделе сервер для бэкапов, о самой базе рассказывает страница MongoDB. Раз в месяц разворачивайте дамп на тестовой машине, иначе копия остаётся предположением. Для обновления смените версию образа в файле настроек и перезапустите набор.

Ключевые цифры

Термины на странице

Let's Encrypt
Let's Encrypt выпускает бесплатные DV-сертификаты на 90 дней с автоматическим продлением.
Nextcloud
Nextcloud это облачное хранилище файлов, которое ставят на свой сервер.
Nginx
Nginx это веб-сервер и обратный прокси. Его часто ставят перед приложением, чтобы раздавать статику и держать HTTPS.
n8n
n8n это программа для автоматизации: связывает сервисы сценариями без программирования.
A-запись
A-запись связывает домен с IPv4-адресом сервера.
Apache
Apache это веб-сервер. На хостинге с ним работают файлы .htaccess.
Linux
Linux это семейство операционных систем для серверов: Ubuntu, Debian, AlmaLinux и другие.
PostgreSQL
PostgreSQL это база данных для приложений с большими объёмами и сложными запросами.

Что проверить

  1. Выберите конфигурацию по памяти и диску под задачу, процессор обычно вторичен.
  2. Проверьте тип виртуализации: KVM даёт свою систему и гарантированные ресурсы.
  3. Уточните, входит ли IPv4 и сколько стоит трафик сверх пакета.
  4. Храните данные контейнеров в томах.
  5. Закрепляйте версии образов, а не latest.
  6. Ограничьте ресурсы контейнеров, чтобы один не съел весь сервер.

Связанные страницы