Содержание

Управление

Самостоятельное развёртывание

Комплект Docker запускает мост, страницу аватара и панель управления на вашем сервере. Порты сервисов остаются привязанными к loopback.

Требования

Нужен Linux VPS с Docker Engine и плагином Compose v2. В документации указано, что достаточно 1 vCPU и 512 МБ памяти. Понадобятся совместимый с OpenAI API адрес LLM, его API-ключ, адрес шлюза JEV, аккаунт бота Twitch и OAuth-токен, а также GOOGLE_API_KEY для TTS. Можно запустить -setup на ноутбуке и скопировать созданные секреты на сервер.

Установка

Самостоятельная установка пока в раннем доступе: установщик и образ контейнера ещё не публичные, поэтому первые установки мы подключаем вручную. Напишите в Telegram @ameobius — пришлём комплект и поможем запустить.

По умолчанию комплект создаётся в ~/stream-mate/. Укажите в .env TWITCH_NICK, TWITCH_OAUTH, TWITCH_CHANNEL, LLM_*, JEV_ENDPOINT и GOOGLE_API_KEY.

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

Убедитесь, что Compose показывает состояние контейнера healthy, запрос к адресу проверки состояния проходит, а в логах видно подключение к чату.

cd ~/stream-mate
docker compose ps
curl -s http://127.0.0.1:8432/healthz
docker compose logs -f

Для OBS добавьте источник браузера с адресом http://localhost:8432/.

Панель управления

Выпустите токен входа из работающего контейнера, затем откройте панель управления и вставьте токен.

docker compose exec stream-mate /bridge -config /config/config.json -issue-token streamer

Панель управления слушает порт 8440. Чтобы подключиться к ней с другого компьютера, создайте SSH-туннель:

ssh -L 8440:127.0.0.1:8440 vps

Необязательный публичный доступ

Оставьте порты сервисов на loopback и настройте перед ними TLS-прокси. Для EventSub и вебхуков оплаты нужен публичный HTTPS-адрес.

mate.example.com {
  reverse_proxy 127.0.0.1:8440
}

Обновление и откат

По умолчанию установщик добавляет задание обновления на 04:17. Скрипт определяет точный digest образа и пересоздаёт контейнер только при его изменении. Данные в томе data, включая память, счётчики, токены панели и настройки, сохраняются при обновлении.

STREAM_MATE_CHANNEL=latest получает образ после слияний в main; stable — только после публикации тегов. До появления первого тега версии значением по умолчанию является latest; после публикации stable для тега версии можно переключить канал. Команда ~/stream-mate/update.sh --rollback возвращает предыдущий digest. Можно закрепить STREAM_MATE_IMAGE за тегом или digest реестра.

Своя конфигурация и несколько ведущих

Чтобы использовать собственную конфигурацию, раскомментируйте подключение ./config.json:/config/config.json:ro в docker-compose.yml. Для нескольких ведущих см. справочник нескольких арендаторов.