Уточнение секретов и умная установка зависимостей в install

This commit is contained in:
root 2026-03-11 08:54:14 +00:00
parent 18d01581be
commit dc77ed1c1d
2 changed files with 44 additions and 2 deletions

View File

@ -47,6 +47,17 @@ sudo ./install
| `F7CLOUD_TALK_URL` | URL signaling (HPB), например `https://hpb-prod.f7cloud.ru/standalone-signaling` |
| `F7CLOUD_TALK_INTERNALSECRET` | internalsecret для доступа к signaling-серверу |
#### Где какой секрет брать
| Параметр | Где взять |
|----------|-----------|
| **F7CLOUD_NEXTCLOUD_URL** | Публичный URL вашего сервера Nextcloud/F7cloud (тот же, что открывают в браузере), например `https://forbion.f7cloud.ru`. Без слэша в конце. |
| **F7CLOUD_SECRET** | **Общий секрет между Nextcloud и сервером записи.** Задаётся в двух местах и должен совпадать: (1) в конфиге записи — секции `[backend]` и `[nextcloud]`; (2) в админке Nextcloud: **Настройки → Talk → Recording backend** — поле «Secret» (или «Секрет»). Можно сгенерировать: `openssl rand -hex 32`. Используется для проверки запросов от Talk к серверу записи. |
| **F7CLOUD_TALK_URL** | **URL signaling-сервера (HPB).** Тот же URL, что указан в админке Talk для signaling (например `https://hpb-prod.f7cloud.ru/standalone-signaling`). Должен быть доступен с машины, где крутится сервер записи. |
| **F7CLOUD_TALK_INTERNALSECRET** | **Секрет между signaling (HPB) и сервером записи** — это не тот же секрет, что для Nextcloud. Берётся из конфига signaling-сервера: параметр `clients->internalsecret` в файле конфигурации HPB (часто `/etc/nextcloud-spreed-signaling/server.conf` или аналог на вашем стенде). Значение должно быть **одинаковым** в конфиге HPB и в конфиге сервера записи. Если на HPB internalsecret не задан, запросы от сервера записи будут отклоняться. |
Кратко: **F7CLOUD_SECRET** — в админке Talk (Recording backend) и в нашем конфиге; **F7CLOUD_TALK_INTERNALSECRET** — только в конфиге HPB и в нашем конфиге (в админке Talk его нет).
Пример:
```bash

33
install
View File

@ -18,8 +18,39 @@ fi
REPO_ROOT="$(cd "$(dirname "$0")" && pwd)"
echo "=== 1. Зависимости (только Python 3.12, xvfb, ffmpeg — остальное в репо) ==="
NEED_PYTHON=0
NEED_XVFB=0
NEED_FFMPEG=0
if ! command -v python3.12 >/dev/null 2>&1; then
NEED_PYTHON=1
fi
if ! command -v Xvfb >/dev/null 2>&1 && ! command -v xvfb-run >/dev/null 2>&1; then
NEED_XVFB=1
fi
if ! command -v ffmpeg >/dev/null 2>&1; then
NEED_FFMPEG=1
fi
if [ "$NEED_PYTHON" -eq 0 ] && [ "$NEED_XVFB" -eq 0 ] && [ "$NEED_FFMPEG" -eq 0 ]; then
echo "Python 3.12, Xvfb и ffmpeg уже установлены — шаг apt пропущен."
else
echo "Не все зависимости найдены, будет использован apt-get (может потребоваться исправить репозитории)."
apt-get update -qq
apt-get install -y python3.12 python3.12-venv xvfb ffmpeg
PKGS=""
if [ "$NEED_PYTHON" -eq 1 ]; then
PKGS="$PKGS python3.12 python3.12-venv"
fi
if [ "$NEED_XVFB" -eq 1 ]; then
PKGS="$PKGS xvfb"
fi
if [ "$NEED_FFMPEG" -eq 1 ]; then
PKGS="$PKGS ffmpeg"
fi
# shellcheck disable=SC2086
apt-get install -y $PKGS
fi
echo ""
echo "=== 2. Firefox ESR и GeckoDriver (копирование из репо) ==="