Skip to content

Установка и обновление Callbox

Рекомендуемый способ

Для новой установки и обновления используйте установщик NextBox. Он создаёт согласованные docker-compose.yaml, livekit.yaml, egress.yaml и конфигурацию reverse proxy, генерирует секреты и проверяет занятость портов.

В интерактивном режиме выберите профиль NextBox + Callbox. В CLI ему соответствует профиль nextbox-callbox:

bash
sudo ./nextbox-installer install \
  --profile nextbox-callbox \
  --dir /opt/nextbox

Точные параметры домена, TLS, внешнего адреса LiveKit и включения записи задайте в мастере установки. Callbox автоматически включает компонент LiveKit.

TIP

Установщик предпочтителен и для обновления существующей установки: он сохраняет секреты LiveKit, создаёт резервную копию PostgreSQL и обновляет конфигурационные файлы согласованно.

Ручная установка

Если NextBox уже установлен через Docker Compose и конфигурация поддерживается вручную, воспользуйтесь инструкцией Docker Compose.

Системные требования

  • Docker Engine и Docker Compose v2;
  • работающая установка NextBox с PostgreSQL, Redis, RabbitMQ, Discovery и Gateway;
  • доступ к registry nextbox-docker.ptnl.moscow;
  • отдельный DNS-адрес и TLS для LiveKit в production;
  • доступные клиентам порты LiveKit: 7880/tcp, 7881/tcp и UDP-диапазон медиапортов;
  • для записи звонков — не менее 4 vCPU и 1 ГБ shared memory на одну одновременно работающую Egress-реплику.

Транскрибация предъявляет отдельные требования к CPU/GPU и памяти и не обязательна для базовой установки.

После установки

Проверьте:

bash
docker compose ps
docker compose logs --tail=100 callbox livekit egress
curl -fsS http://127.0.0.1:7880/

Health-check Discovery при заданном SERVICE_TOKEN проверяется так:

bash
curl -fsS \
  -H "Authorization: Service <SERVICE_TOKEN>" \
  http://127.0.0.1:8081/callbox/api/health-check

Затем откройте /callbox, создайте тестовую комнату и проверьте подключение двух клиентов. Если включена запись, дополнительно создайте короткую запись и дождитесь её появления в списке файлов комнаты.