F7_recording/DEPLOY.md

5.2 KiB
Raw Blame History

Развертывание F7cloud Talk Recording Server

Быстрое развертывание на новом сервере

Автоматическое развертывание (рекомендуется)

Самый простой способ - использовать скрипт автоматического развертывания:

curl -fsSL https://git.f7cloud.ru/root/F7_recording/raw/branch/main/deploy.sh | bash

или

wget -qO- https://git.f7cloud.ru/root/F7_recording/raw/branch/main/deploy.sh | bash

Скрипт выполнит:

  1. Клонирование репозитория
  2. Интерактивный ввод необходимых параметров (HPB URL, секреты)
  3. Автоматическую установку всех зависимостей
  4. Настройку конфигурации
  5. Создание systemd service

Ручное развертывание

1. Клонирование репозитория

cd /opt
git clone https://git.f7cloud.ru/root/F7_recording.git f7cloud-talk-recording
cd f7cloud-talk-recording

2. Запуск установки с параметрами

# Подготовьте файл f7cloud-install.env с переменными, затем:
sudo ./f7recording.sh /path/to/f7cloud-install.env

3. Запуск сервиса

sudo systemctl start f7cloud-talk-recording
sudo systemctl enable f7cloud-talk-recording

Получение секретов

HPB Secret (internalsecret)

Секрет для подключения к HPB находится в конфигурации signaling сервера:

# На сервере signaling сервера
cat /etc/nextcloud-spreed-signaling/server.conf | grep internalsecret

Или в секции [clients] файла /etc/nextcloud-spreed-signaling/server.conf:

[clients]
internalsecret = your-hpb-secret-here

F7cloud Secret

Секрет для подключения к F7cloud настраивается в админ-панели F7cloud:

  1. Войдите в F7cloud как администратор
  2. Перейдите в НастройкиTalk
  3. Найдите раздел Recording backend
  4. Скопируйте секрет из поля Secret

Автоматическая загрузка зависимостей

Скрипт f7recording.sh использует системные пакеты (firefox-esr и др.), если они отсутствуют:

  • Firefox ESR - скачивается с официального сайта Mozilla
  • Geckodriver - скачивается с GitHub releases

Зависимости определяются автоматически по архитектуре системы (x86_64 или aarch64).

Переменные окружения

Вы также можете использовать переменные окружения вместо интерактивного ввода:

# Создайте файл f7cloud-install.env с переменными HPB_DOMAIN, HPB_INTERNAL_SECRET, DOMAIN, HPB_BACKEND_SECRET
sudo ./f7recording.sh /path/to/f7cloud-install.env

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

После установки проверьте:

# Статус сервиса
sudo systemctl status f7cloud-talk-recording

# Логи
sudo journalctl -u f7cloud-talk-recording -f

# Проверка конфигурации
sudo cat /etc/f7cloud-talk-recording/server.conf

# Проверка Firefox
/usr/local/bin/firefox-esr --version

# Проверка Geckodriver
/usr/local/bin/geckodriver --version

Обновление

Для обновления на существующем сервере:

cd /opt/f7cloud-talk-recording
sudo systemctl stop f7cloud-talk-recording
git pull
source venv/bin/activate
pip install -e .
sudo systemctl start f7cloud-talk-recording

Устранение неполадок

Проблемы с загрузкой зависимостей

Если автоматическая загрузка не работает, установите зависимости вручную:

cd /opt/f7cloud-talk-recording/dependencies

# Firefox ESR
wget https://download.mozilla.org/?product=firefox-esr-latest-ssl&os=linux64&lang=en-US -O firefox-esr.tar.bz2
tar -xjf firefox-esr.tar.bz2
mv firefox firefox-esr

# Geckodriver
wget https://github.com/mozilla/geckodriver/releases/latest/download/geckodriver-v0.34.0-linux64.tar.gz
tar -xzf geckodriver-v0.34.0-linux64.tar.gz
chmod +x geckodriver

Проблемы с правами доступа

Убедитесь, что пользователь f7cloud-talk-recording имеет права:

sudo chown -R f7cloud-talk-recording:f7cloud-talk-recording /var/lib/f7cloud-talk-recording
sudo chmod 600 /etc/f7cloud-talk-recording/server.conf

Дополнительная информация

  • Подробная инструкция по установке: INSTALL.md
  • Примеры использования: INSTALL_EXAMPLE.md
  • Структура проекта: PROJECT_STRUCTURE.md