Обзор развертывания Mumble на сервере¶
Предварительные требования¶
Для корректной работы приложения требуются следующие условия:
-
Операционная система: Ubuntu.
-
Наличие установленного Docker.
-
Доступ к портам для передачи голосового трафика (TCP/UDP).
-
Права доступа
rootдля управления системными директориями и контейнерами.
FDQN итоговой панели на домене hostkey.in¶
Для работы веб-прокси используется следующий шаблон доменного имени:
| Параметр | Значение |
|---|---|
| Префикс | mumble |
| Домен | hostkey.in |
| Полный шаблон | mumble{Server_ID_from_Invapi}.hostkey.in |
Структура файлов и каталогов¶
В системе используются следующие директории для хранения данных и конфигураций:
-
/opt/mumble/data— основное хранилище данных приложения Mumble. -
/root/nginx— рабочая директория конфигурации прокси-сервера. -
/data/nginx/user_conf.d— директория с пользовательскими конфигурациями Nginx.
Процесс установки приложения¶
Процесс развертывания включает в себя несколько этапов:
-
Подготовка системного окружения: установка Docker и необходимых зависимостей.
-
Создание рабочей директории для данных приложения по пути
/opt/mumble/data. -
Загрузка образа контейнера
ajmandourah/mumbleиз реестра. -
Настройка прокси-сервера Nginx для перенаправления трафика на внутренний порт приложения.
-
Получение SSL-сертификатов через Certbot для обеспечения защищенного соединения.
Контейнеры Docker и их запуск¶
Приложение разворачивается с использованием следующих контейнеров:
Mumble¶
-
Имя образа:
ajmandourah/mumble -
Порты:
-
64738(TCP) — для основного трафика. -
64738(UDP) — для голосового трафика. -
Тома:
/opt/mumble/data(хост) \(\rightarrow\)/data(контейнер). -
Политика перезапуска:
always.
Nginx Proxy (Certbot)¶
Данный контейнер используется исключительно для управления SSL-сертификатами и проксирования трафика.
-
Имя образа:
jonasal/nginx-certbot:latest -
Режим сети:
host. -
Тома:
-
nginx_secrets(внешний том) \(\rightarrow\)/etc/letsencrypt. -
/data/nginx/user_conf.d\(\rightarrow\)/etc/nginx/user_conf.d.
Инструкция по обновлению приложения¶
Для обновления основного приложения необходимо выполнить следующие действия:
-
Обновить образ контейнера:
-
Перезапустить контейнер для применения изменений:
(Примечание: Обновление затрагивает только основной сервис приложения).
Расположение конфигурационных файлов и данных¶
-
Данные пользователя Mumble:
/opt/mumble/data. -
Конфигурация прокси-сервера:
/data/nginx/user_conf.d/{prefix}{server_id}.hostkey.in.conf. -
Файл переменных окружения Nginx:
/data/nginx/nginx-certbot.env.
Доступные порты для подключения¶
| Порт | Протокол | Назначение |
|---|---|---|
64738 | TCP | Голосовой трафик Mumble |
64738 | UDP | Голосовой трафик Mumble |
443 | TCP | HTTPS (через прокси) |
Запуск, остановка приложения¶
Управление контейнером приложения выполняется следующими командами:
-
Запуск/Перезапуск:
-
Остановка: