Конфігурація
Налаштування може здійснюватися через конфігураційний файл, аргументи командного рядка або змінні оточення.
- Файл
- Змінні оточення
- Аргументи командного рядка
- Згенерувати конфігураційний файл зі значеннями за замовчуванням:
- TOML
- YAML
/opt/yucca/yucca server --show-config --show-config-format=toml
/opt/yucca/yucca server --show-config --show-config-format=yaml
- Переглянути всі доступні змінні оточення можна такою командою:
/opt/yucca/yucca server --show-config --show-config-format=env
- Переглянути всі доступні аргументи командного рядка можна такою командою:
/opt/yucca/yucca server --help
Параметри поділяються на логічні розділи (блоки), які відповідають префіксу в аргументах командного рядка і змінних оточення.
server
Глобальні параметри сервера.
log_level
Рівень логування для сервера.
Можливі значення: panic, fatal, error, warning, info, debug
infoЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--log-level=info - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_LOG_LEVEL=info - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
log_level = "info"
data_dir
Глобальний каталог для зберігання стану (у разі використання sqlite3) і даних потоків.
./dataЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--data-dir=/opt/yucca/data/ - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_DATA_DIR=/opt/yucca/data/ - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
data_dir = "/opt/yucca/data/"
alloc_dir
Каталог з даними потоків (відеоархів та інше).
<data_dir>/allocЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--alloc-dir=/opt/yucca/data/alloc/ - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_ALLOC_DIR=/opt/yucca/data/alloc/ - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
alloc_dir = "/opt/yucca/data/alloc/"
state_dir
Каталог з файлом бази даних (у разі використання sqlite3).
<data_dir>/serverЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--state-dir=/opt/yucca/data/server/ - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_STATE_DIR=/opt/yucca/data/server/ - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
state_dir = "/opt/yucca/data/server/"
temp_dir
Каталог tmpfs для даних з коротким терміном зберігання. (тут зберігаються чанки, що ротуються для живого потоку)
/dev/shm/yuccaЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--temp-dir=/dev/shm/yucca - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_TEMP_DIR=/dev/shm/yucca - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
temp_dir = "/dev/shm/yucca"
alloc_dir_warning_threshold
Пороговий відсоток для попередження про використання диска.
В інтерфейсі сервера всім адміністраторам буде показуватися попередження, якщо налаштовано SMTP-клієнт, всі адміністратори також отримають сповіщення по E-mail про те, що закінчується вільний простір на диску.
80Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--alloc-dir-warning-threshold=80 - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_ALLOC_DIR_WARNING_THRESHOLD=80 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
alloc_dir_warning_threshold = "80"
stats_collection_interval
Інтервал збору статистики по ресурсах системи.
1sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--stats-collection-interval=1s - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_STATS_COLLECTION_INTERVAL=1s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
stats_collection_interval = "1s"
default_language
Мова інтерфейсу за замовчуванням у нових користувачів, також вона буде використана на сторінці входу.
Можливі значення: en, ru, uk, es, pt, tr
enЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--default-language=en - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_DEFAULT_LANGUAGE=en - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
default_language = "en"
domain
Використовується для визначення поля Server під час налаштування отримання подій по Email
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--domain=demo.yucca.app - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_DOMAIN=192.168.188.15 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
domain = "demo.yucca.app"
health_check_interval
Інтервал для перевірки працездатності залежностей.
"30s"Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--health-check-interval="30s" - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_HEALTH_CHECK_INTERVAL="30s" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
health_check_interval = "30s"
listen_address
IP адреса і порт, на якому буде доступний веб інтерфейс.
:9910Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--web.listen-address=:9910 - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_LISTEN_ADDRESS=:9910 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
listen_address = ":9910"
log_file
Шлях до файлу з логами, якщо не вказано, то stdout.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--log-file=/var/log/yucca.log - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_LOG_FILE=/var/log/yucca.log - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
log_file = "/var/log/yucca.log"
self_logs
Перегляд логів сервера і потоків в інтерфейсі у вкладці відладка.
trueЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--self-logs=true - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_SELF_LOGS=false - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
self_logs = true
log_buffer_size
Кількість останніх повідомлень в інтерфейсі у вкладці відладка.
50Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--log-buffer-size=50 - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_LOG_BUFFER_SIZE=50 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
log_buffer_size = 50
cert_file
Шлях до файлу сертифіката, у разі використання HTTPS.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--cert-file=/opt/yucca/ssl/cert.crt - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_CERT_FILE=/opt/yucca/ssl/cert.crt - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
cert_file = "/opt/yucca/ssl/cert.crt"
cert_key
Шлях до файлу ключа, у разі використання HTTPS.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--cert-key=/opt/yucca/ssl/cert.key - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_CERT_KEY=/opt/yucca/ssl/cert.key - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
cert_key = "/opt/yucca/ssl/cert.key"
pprof
Увімкнути профілювання.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--pprof=true - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_PPROF=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
pprof = true
pprof_listen_address
IP адреса і порт, на якому буде доступний pprof профілювальник.
:9911Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--pprof-listen-address=":9911" - за допомогою змінної оточення:
#!shell export YUCCA_SERVER_PPROF_LISTEN_ADDRESS=":9911" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[server]
pprof_listen_address = ":9911"
validate
Прапорець для перевірки коректності конфігурації.
Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--validate
Приклад використання
./yucca server --config /opt/yucca/yucca.toml --validate
Valid configuration
database
Підключення до бази даних.
type
Підтримується 2 типи баз даних для зберігання стану – sqlite3 і postgres. У невеликих інсталяціях достатньо sqlite3, при великій кількості потоків ми рекомендуємо використовувати postgres.
sqlite3Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-type=sqlite3 - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_TYPE=sqlite3 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
type = "sqlite3"
path
Шлях до файлу бази (тільки для sqlite3).
<state_dir>/state.dbЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-path=/opt/yucca/server/state.db - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_PATH=/opt/yucca/server/state.db - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
path = "/opt/yucca/server/state.db"
host
Адреса підключення до бази (тільки для postgres).
127.0.0.1:5432Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-host=127.0.0.1:5432 - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_HOST=127.0.0.1:5432 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
host = "127.0.0.1:5432"
name
Назва бази даних (тільки для postgres).
yuccaЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-name=yucca - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_NAME=yucca - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
name = "yucca"
user
Ім'я користувача для підключення (тільки для postgres).
postgresЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-user=postgres - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_USER=postgres - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
user = "postgres"
password
Пароль користувача для підключення (тільки для postgres).
postgresЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-password=postgres - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_PASSWORD=postgres - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
password = "postgres"
ssl_mode
Використовувати при підключенні SSL (шифроване з'єднання) (тільки для postgres). Можливі значення: disable, require, verify-full).
disableЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-ssl-mode=disable - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_SSL_MODE=disable - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
ssl_mode = "disable"
busy_timeout
Тайм-аут у секундах для очікування розблокування таблиці SQLite (тільки для sqlite3).
500Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-busy-timeout=500 - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_BUSY_TIMEOUT=500 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
busy_timeout = 500
ca_cert_path
Шлях до сертифіката центру сертифікації (CA) у разі використання SSL (тільки для postgres).
/etc/ssl/certsЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-ca-cert-path=/etc/ssl/certs - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_CA_CERT_PATH=/etc/ssl/certs - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
ca_cert_path = "/etc/ssl/certs"
client_cert_path
Шлях до файлу з сертифікатом у разі використання SSL (тільки для postgres).
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-client-cert-path=/opt/yucca/ssl/cert.crt - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_CLIENT_CERT_PATH=/opt/yucca/ssl/cert.crt - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
client_cert_path = "/opt/yucca/ssl/cert.crt"
client_key_path
Шлях до файлу з ключем у разі використання SSL (тільки для postgres).
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-client-key-path=/opt/yucca/ssl/cert.key - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_CLIENT_KEY_PATH=/opt/yucca/ssl/cert.key - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
client_key_path = "/opt/yucca/ssl/cert.key"
cache_mode
Параметр спільного кешу, використовуваний для підключення до бази даних (тільки для sqlite3). Можливі значення: private, shared.
sharedЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-cache-mode=shared - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_CACHE_MODE=shared - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
cache_mode = "shared"
conn_max_lifetime
Встановлює максимальний час, протягом якого з'єднання може бути повторно використане.
0sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-conn-max-lifetime=0s - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_CONN_MAX_LIFETIME=0s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
conn_max_lifetime = "0s"
log_queries
Логувати SQL-запити і час виконання.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-log-queries=false - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_LOG_QUERIES=false - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
log_queries = false
max_open_conn
Максимальна кількість відкритих з'єднань з базою даних (тільки для postgres).
0Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-max-open-conn=0 - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_MAX_OPEN_CONN=0 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
max_open_conn = 0
max_idle_conn
Максимальна кількість з'єднань в очікуванні (тільки для postgres).
2Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--database-max-idle-conn=2 - за допомогою змінної оточення:
#!shell export YUCCA_DATABASE_MAX_IDLE_CONN=2 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[database]
max_idle_conn = 2
streams
Параметри, що стосуються поведінки потоків.
archive_download_max_duration
Максимальна допустима довжина запитуваного відрізка часу для завантаження.
24hЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-archive-download-max-duration=24h - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_MAX_DURATION=24h - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
archive_download_max_duration = "24h"
archive_download_request_lifetime
Час життя запитаного для завантаження відрізка.
При завантаженні проміжків архіву формується файл запитаної довжини і протягом часу, вказаного в цьому параметрі, буде доступний для завантаження. Якщо ви завантажуєте тривалі відрізки при повільній швидкості завантаження, рекомендується збільшити час у цьому параметрі.
1h0m0sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-archive-download-request-lifetime=6h - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_REQUEST_LIFETIME=1h0m0s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
archive_download_request_lifetime = "1h0m0s"
archive_max_depth_hours
Максимальна допустима глибина для зберігання архіву в годинах.
-1Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-archive-max-depth-hours=-1 - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_ARCHIVE_MAX_DEPTH_HOURS=-1 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
archive_max_depth_hours = -1
live_on_demand_lease_duration
Час життя оренди для живого потоку за запитом (live on-demand).
Час, протягом якого запитаний live on-demand потік буде працювати після останнього продовження оренди, тобто час життя оренди після останнього її продовження. Оренда продовжується при запиті статусу потоку на сторінці його перегляду. Чим менше число, тим швидше потік перейде в стан паузи після закриття сторінки перегляду.
1m0sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-live-on-demand-lease-duration=1m0s - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_DURATION=1m0s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_duration = 1m0s
live_on_demand_lease_interval
Частота перевірки активної оренди для живого потоку за запитом (live on-demand). Параметр повинен бути меншим, ніж live_on_demand_lease_duration.
30sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-live-on-demand-lease-interval=30s - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_INTERVAL=30s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_interval = 30s
playlist_max_duration
Максимально допустима довжина запитуваного відрізка часу для M3U8-плейлиста.
3hЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-playlist-max-duration=3h - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_PLAYLIST_MAX_DURATION=3h - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
playlist_max_duration = "3h"
ranges_max_duration
Максимальна допустима довжина запитуваного відрізка часу для рейнджів (діапазон доступності архіву).
168hЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-ranges-max-duration=168h - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_RANGES_MAX_DURATION=168h - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
ranges_max_duration = "168h"
uuid_slug
Використовувати, як публічний ідентифікатор потоку, згенерований UUID.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--streams-uuid-slug=false - за допомогою змінної оточення:
#!shell export YUCCA_STREAMS_UUID_SLUG=false - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[streams]
uuid_slug = false
executor
Параметри запуску потоків.
type
Тип виконавця для паркування потоків. Доступні значення exec, docker.
- Exec - сервер запускає ffmpeg і стежить за його роботою безпосередньо сам, без використання docker і yucca-worker.
- Docker - (застарів і буде видалений у майбутньому) на кожен потік сервер запускає docker контейнер, в якому працює yucca-worker, який у свою чергу запускає ffmpeg і стежить за його роботою, у разі проблем перезапускає.
execЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--executor=exec - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_TYPE=docker - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor]
type = "exec"
log_level
Рівень логування executor. Можливі значення: panic, fatal, error, warning, info, debug).
infoЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--executor-log-level=info - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_LOG_LEVEL=info - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor]
log_level = "info"
executor.exec
Додаткові параметри для типу exec.
cancel_grace_period
Інтервал очікування завершення всіх запущених підпроцесів (ffmpeg, ffprobe, ...).
5sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-cancel-grace-period=5s - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_CANCEL_GRACE_PERIOD=5s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
cancel_grace_period = "5s"
ffmpeg_log_level
Рівень логування для процесів ffmpeg.
errorЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-ffmpeg-log-level="error" - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_LEVEL="error" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_level = "error"
ffmpeg_log_max_file
Максимальна кількість файлів журналу, які можуть бути присутніми.
5Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-ffmpeg-log-max-file=5 - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_FILE=5 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_file = 5
ffmpeg_log_max_size
Максимальний розмір файлу журналу перед його ротацією і стисненням.
"20mb"Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-ffmpeg-log-max-size"20mb" - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_SIZE"20mb" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_size ="20mb"
hls_list_size
Довжина m3u8 HLS плейлиста.
5Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-hls-list-size=5 - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_HLS_LIST_SIZE=5 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
hls_list_size = 5
hls_time
Бажана довжина сегмента відео HLS сегментів у секундах.
2Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-hls-time=2 - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_HLS_TIME=5 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
hls_time = 5
preview
Увімкнення створення прев'ю зображень у фоні.
trueЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-preview=true - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_PREVIEW=false - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
preview = true
preview_interval
Інтервал створення прев'ю зображень.
5sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-preview-interval=5s - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_PREVIEW_INTERVAL=5s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
preview_interval = "5s"
probe_interval
Інтервал, з якого потік починає перевірятися на доступність, інтервал поступово
зростає (щоб уникнути проблеми, коли часті перевірки призводять до зависання IP камери)
до значення, заданого в probe_interval_maximum, при цьому кількість спроб не повинна
перевищувати значення probe_retries, інакше потік перейде в статус Failed.
5sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-probe-interval="5s" - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL="5s" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval = "5s"
probe_interval_maximum
Дивись опис probe_interval.
1m0sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-probe-interval-maximum="1m0s" - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL_MAXIMUM="1m0s" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval_maximum = "1m0s"
probe_retries
Дивись опис probe_interval.
5Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-probe-retries=5 - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_RETRIES=5 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
probe_retries = 5
probe_timeout
Таймаут отримання інформації по джерелу.
5Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--exec-probe-timeout="1m0s" - за допомогою змінної оточення:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_TIMEOUT="1m0s" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[executor.exec]
probe_timeout = "1m0s"
smtp_client
Налаштування вбудованого SMTP-клієнта. Відповідає за розсилку сповіщень користувачам поштою, наприклад про те, що скоро закінчується ліцензія.
enabled
Увімкнути SMTP-клієнт для відправки електронних листів.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client=true - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_ENABLED=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
enabled = true
host
Адреса SMTP сервера.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-host="smtp.gmail.com:465" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_HOST="smtp.yandex.ru:465" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
host = ""
user
Користувач для авторизації на SMTP сервері.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-user="" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_USER="" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
user = ""
password
Пароль для авторизації на SMTP сервері.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-password="" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_PASSWORD="" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
password = ""
from_address
Адреса, яка використовується при відправці електронних листів.
"admin@yucca.localhost"Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-from-address="admin@yucca.localhost" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_FROM_ADDRESS="admin@yucca.localhost" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
from_address = "admin@yucca.localhost"
from_name
Ім'я, яке використовується при відправці електронних листів.
"Yucca"Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-from-name="Yucca" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_FROM_NAME="Yucca" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
from_name = "Yucca"
cert_path
Шлях до файлу з сертифікатом.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-cert-path="" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_CERT_PATH="" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
cert_path = ""
key_path
Шлях до файлу з ключем.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-key-path="" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_KEY_PATH="" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
key_path = ""
skip_verify
Перевіряти SSL сертифікат SMTP сервера.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-client-skip-verify="" - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_CLIENT_SKIP_VERIFY="" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_client]
skip_verify = ""
smtp_server
Налаштування вбудованого SMTP-сервера для прийому сповіщень про рух від камер.
enabled
Увімкнути вбудований SMTP-сервер для отримання подій від камер.
trueЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-server=true - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_SERVER_ENABLED=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_server]
enabled = true
listen_address
Адреса, на якій буде працювати SMTP-сервер.
:1025Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-server-listen-address=:1025 - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_SERVER_LISTEN_ADDRESS=:1025 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_server]
listen_address = ":1025"
password
Пароль для підключення до SMTP-сервера.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-server-password=admin - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_SERVER_PASSWORD=admin - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_server]
password = "admin"
username
Логін для підключення до SMTP-сервера.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-server-username=admin - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_SERVER_USERNAME=admin - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_server]
username = "admin"
read_timeout
Таймаут читання вхідного повідомлення.
1sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-server-read-timeout=1s - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_SERVER_READ_TIMEOUT=1s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_server]
read_timeout = "1s"
event_window_duration
Довжина нової події детекції руху.
40sЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--smtp-server-event-window-duration=40s - за допомогою змінної оточення:
#!shell export YUCCA_SMTP_SERVER_EVENT_WINDOW_DURATION=40s - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[smtp_server]
event_window_duration = "40s"
security
Параметри безпеки.
audit_logs 💰
Увімкнути журнали аудиту.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--security-audit-logs=false - за допомогою змінної оточення:
#!shell export YUCCA_SECURITY_AUDIT_LOGS=false - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[security]
audit_logs = false
brute_force_login_protection
Увімкнути захист від підбору пароля.
trueЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--security-brute-force-login-protection=true - за допомогою змінної оточення:
#!shell export YUCCA_SECURITY_BRUTE_FORCE_LOGIN_PROTECTION=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[security]
brute_force_login_protection = true
security_password_length
Мінімальна допустима довжина пароля.
3Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--security-password-length=3 - за допомогою змінної оточення:
#!shell export YUCCA_SECURITY_PASSWORD_LENGTH=3 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[security]
password_length = 3
telemetry
Телеметрія. Сервер Yucca віддає метрики у форматі prometheus, що дозволяє наприклад стежити за доступністю камер зовнішньою системою моніторингу. Ось тут ви знайдете приклад з налаштуванням.
enabled
Увімкнути надання метрик у форматі Prometheus.
trueЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--telemetry=true - за допомогою змінної оточення:
#!shell export YUCCA_TELEMETRY_ENABLED=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[telemetry]
enabled = true
listen_address
IP адреса і порт, на якому буде доступна телеметрія.
:9912Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--telemetry-listen-address=:9912 - за допомогою змінної оточення:
#!shell export YUCCA_TELEMETRY_LISTEN_ADDRESS=:9912 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[telemetry]
listen_address = ":9912"
path
URI для доступу до телеметрії.
/metricsЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--telemetry-path=/metrics - за допомогою змінної оточення:
#!shell export YUCCA_TELEMETRY_PATH=/metrics - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[telemetry]
path = "/metrics"
basic_auth_username
Логін базової авторизації для доступу до телеметрії.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--telemetry-basic-auth-username=admin - за допомогою змінної оточення:
#!shell export YUCCA_TELEMETRY_BASIC_AUTH_USERNAME=admin - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_username = "admin"
basic_auth_password
Пароль базової авторизації для доступу до телеметрії.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--telemetry-basic-auth-password=admin - за допомогою змінної оточення:
#!shell export YUCCA_TELEMETRY_BASIC_AUTH_PASSWORD=admin - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_password = "admin"
environment_info
Лейбли для метрики yucca_environment_info.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--telemetry-environment-info=env:test - за допомогою змінної оточення:
#!shell export YUCCA_TELEMETRY_ENVIRONMENT_INFO=env:test - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[telemetry.environment_info]
env = "test"
analytics
Збір аналітики з інтерфейсу сервера за допомогою Yandex.Metrika.
yandex_metrika_counter_id
Yandex.Metrika Counter ID. Увімкнено, якщо визначено.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--analytics-yandex-metrika-counter-id=12345678 - за допомогою змінної оточення:
#!shell export YUCCA_ANALYTICS_YANDEX_METRIKA_COUNTER_ID=12345678 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_counter_id = 12345678
yandex_metrika_webvisor
Вмикає вебвізор, детальні записи активності користувачів на сайті: рух миші, прокручування і кліки.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--analytics-yandex-metrika-webvisor=true - за допомогою змінної оточення:
#!shell export YUCCA_ANALYTICS_YANDEX_METRIKA_WEBVISOR=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_webvisor = true
quota 💰
Глобальні квоти на ресурси. Може обмежувати максимальну кількість певних ресурсів, які можна створити/додати в рамках сервера.
global_stream
Квота на створення потоків.
-1Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--quota-global-stream=-1 - за допомогою змінної оточення:
#!shell export YUCCA_QUOTA_GLOBAL_STREAM=-1 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[quota]
global_stream = -1
global_team
Квота на створення команд.
-1Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--quota-global-team=-1 - за допомогою змінної оточення:
#!shell export YUCCA_QUOTA_GLOBAL_TEAM=-1 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[quota]
global_team = -1
global_user
Квота на створення користувачів.
-1Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--quota-global-user=-1 - за допомогою змінної оточення:
#!shell export YUCCA_QUOTA_GLOBAL_USER=-1 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[quota]
global_user = -1
team_user
Квота на максимальну кількість користувачів у команді.
-1Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--quota-team-user=-1 - за допомогою змінної оточення:
#!shell export YUCCA_QUOTA_TEAM_USER=-1 - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[quota]
team_user = -1
branding 💰
Брендування інтерфейсу.
app_logo
Шлях до файлу з логотипом. Можна вказувати http(s) URL http:// або шлях у файловій системі file://.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--branding-app-logo=https://example.com/logo.png - за допомогою змінної оточення:
#!shell export YUCCA_BRANDING_APP_LOGO=file:///opt/yucca/logo.png - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[branding]
app_logo = "file:///opt/yucca/logo.png"
app_title
Текст у полі Title.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--branding-app-title=Yucca - за допомогою змінної оточення:
#!shell export YUCCA_BRANDING_APP_TITLE=Yucca - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[branding]
app_title = "Yucca"
site
Посилання на ваш сайт.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--branding-site=https://yucca.app - за допомогою змінної оточення:
#!shell export YUCCA_BRANDING_SITE=https://yucca.app - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[branding]
site = "https://yucca.app"
documentation
Посилання на сторінку з документацією.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--branding-documentation=https://docs.yucca.app - за допомогою змінної оточення:
#!shell export YUCCA_BRANDING_DOCUMENTATION=https://docs.yucca.app - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[branding]
documentation = "https://docs.yucca.app"
fav_icon
Шлях до файлу Favicon. Можна вказувати http(s) URL http:// або шлях у файловій системі file://.
""Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--branding-fav-icon=https://example.com/favicon.ico - за допомогою змінної оточення:
#!shell export YUCCA_BRANDING_FAV_ICON=https://example.com/favicon.ico - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[branding]
fav_icon = "file:///opt/yucca/favicon.ico"
cluster 💰
Параметри, що стосуються налаштування кластера (розподілений режим).
cluster_enabled
Увімкнути режим кластера.
falseЗначення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--cluster=true - за допомогою змінної оточення:
#!shell export YUCCA_CLUSTER_ENABLED=true - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[cluster]
enabled = true
cluster_advertise_address
Адреса для оголошення іншим учасникам кластера.
127.0.0.1:9940Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--cluster-advertise-address="127.0.0.1:9940" - за допомогою змінної оточення:
#!shell export YUCCA_CLUSTER_LISTEN_ADDRESS=24h - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[cluster]
advertise_address = "127.0.0.1:9940"
cluster_listen_address
Адреса для підключення учасників кластера.
0.0.0.0:9940Значення можна визначити одним зі способів:
- за допомогою аргументу запуску:
--cluster-listen-address="0.0.0.0:9940" - за допомогою змінної оточення:
#!shell export YUCCA_CLUSTER_LISTEN_ADDRESS="0.0.0.0:9940" - за допомогою конфігураційного файлу:
# /opt/yucca/yucca.toml
[cluster]
listen_address = "0.0.0.0:9940"