163 lines
5.2 KiB
Markdown
163 lines
5.2 KiB
Markdown
# Развертывание F7cloud Talk Recording Server
|
||
|
||
## Быстрое развертывание на новом сервере
|
||
|
||
### Автоматическое развертывание (рекомендуется)
|
||
|
||
Самый простой способ - использовать скрипт автоматического развертывания:
|
||
|
||
```bash
|
||
curl -fsSL https://git.f7cloud.ru/root/F7_recording/raw/branch/main/deploy.sh | bash
|
||
```
|
||
|
||
или
|
||
|
||
```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. Клонирование репозитория
|
||
|
||
```bash
|
||
cd /opt
|
||
git clone https://git.f7cloud.ru/root/F7_recording.git f7cloud-talk-recording
|
||
cd f7cloud-talk-recording
|
||
```
|
||
|
||
#### 2. Запуск установки с параметрами
|
||
|
||
```bash
|
||
# Подготовьте файл f7cloud-install.env с переменными, затем:
|
||
sudo ./f7recording.sh /path/to/f7cloud-install.env
|
||
```
|
||
|
||
#### 3. Запуск сервиса
|
||
|
||
```bash
|
||
sudo systemctl start f7cloud-talk-recording
|
||
sudo systemctl enable f7cloud-talk-recording
|
||
```
|
||
|
||
## Получение секретов
|
||
|
||
### HPB Secret (internalsecret)
|
||
|
||
Секрет для подключения к HPB находится в конфигурации signaling сервера:
|
||
|
||
```bash
|
||
# На сервере signaling сервера
|
||
cat /etc/nextcloud-spreed-signaling/server.conf | grep internalsecret
|
||
```
|
||
|
||
Или в секции `[clients]` файла `/etc/nextcloud-spreed-signaling/server.conf`:
|
||
|
||
```ini
|
||
[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).
|
||
|
||
## Переменные окружения
|
||
|
||
Вы также можете использовать переменные окружения вместо интерактивного ввода:
|
||
|
||
```bash
|
||
# Создайте файл f7cloud-install.env с переменными HPB_DOMAIN, HPB_INTERNAL_SECRET, DOMAIN, HPB_BACKEND_SECRET
|
||
sudo ./f7recording.sh /path/to/f7cloud-install.env
|
||
```
|
||
|
||
## Проверка установки
|
||
|
||
После установки проверьте:
|
||
|
||
```bash
|
||
# Статус сервиса
|
||
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
|
||
```
|
||
|
||
## Обновление
|
||
|
||
Для обновления на существующем сервере:
|
||
|
||
```bash
|
||
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
|
||
```
|
||
|
||
## Устранение неполадок
|
||
|
||
### Проблемы с загрузкой зависимостей
|
||
|
||
Если автоматическая загрузка не работает, установите зависимости вручную:
|
||
|
||
```bash
|
||
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` имеет права:
|
||
|
||
```bash
|
||
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`
|