Обзор системы конфигурации и YAML структуры
В RUSEON Core используется гибридная модель конфигурации: статические параметры инфраструктуры (сеть, порты, SSL/TLS сертификаты, JWT-секреты, пути к диску) определяются в YAML-файле конфигурации (config.yaml), а динамические сущности (камеры, пользователи, теги, папки и индексы архива) сохраняются и управляются внутри встроенной базы BadgerDB v4.
1. Первоначальная миграция состояния
Когда RUSEON Core запускается впервые на пустой базе данных:
- Сервер считывает начальные секции
cameras,foldersиglobal_tagsиз файлаconfig.yaml. - Автоматически сохраняет их в базу данных BadgerDB.
- В дальнейшем управление камерами и пользователями осуществляется через веб-панель управления, REST API или CLI. Статические параметры сервера (порты, JWT-ключи, уровни логирования) продолжают считываться из
config.yamlпри каждом перезапуске.
2. Переопределение через переменные окружения
Любой параметр из YAML можно переопределить через переменные окружения с префиксом RUSEON_:
bash
# Переопределение хоста и порта сервера
export RUSEON_SERVER_HOST="0.0.0.0"
export RUSEON_SERVER_PORT="8080"
# Переопределение JWT-секрета и уровня логов
export RUSEON_AUTH_JWT_SECRET="production_random_secret_32_chars_long"
export RUSEON_LOGGING_LEVEL="info"
export RUSEON_RECORDING_STORAGE_PATH="/mnt/video/recordings"3. Подразделы руководства по конфигурации
| Раздел | Описание | Руководство |
|---|---|---|
| Параметры сервера | Хост, порты, TLS-сертификаты, CORS-домены и WebRTC ICE | Сервер |
| Аутентификация | Срок действия JWT, bcrypt, роли пользователей | Аутентификация |
| Параметры камер | Таймауты RTSP, транспорты по умолчанию, профили | Камеры |
| Запись и ретенция | Длительность сегментов, дисковые квоты, сроки хранения | Запись |
| События и вебхуки | Эндпоинты вебхуков, брокер MQTT, Circuit Breaker | События |
| Примеры файлов YAML | Готовые файлы конфигурации для Production и разработки | Примеры YAML |