Warning
This page contains configuration description for Yucca 0.4.0, follow link for latest version.
Configuration Yucca 0.4.0¶
Yucca setting may be provided via configuration file, command line arguments or environment variables. Configuration read priority:
- command line arguments;
- file;
- environment variables.
Settings is divided into logistic sections (blocks), which respond to prefix in command line arguments and environment variables.
In section Configuration file in square brackets []
indicate configuration block to which belongs the option.
analytics¶
Analytics collection. Yucca server may collect and send marketing infomation. In particular, the information of system configuration (processor model, type and version of operation system, RAM size, disks size, number of launched streams) to which it launched. We DO NOT collect the information about the streams sources and other sensitive datas. Analytic collection helps us understand better our users.
Collection information is also available in the terms of use.
Command line arguments |
Configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--analytics |
[analytics] enabled | YUCCA_ANALYTICS_ENABLED | true | enable / disable |
--analytics-address |
[analytics] address | YUCCA_ANALYTICS_ADDRESS | "https://analytics.yucca.app/" | URL to which send information |
branding¶
Branding allows you to change logo, field title and favicon.
Available only in Enterprise
Command line arguments |
Cofiguration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--branding-app-logo |
[branding] app_logo | YUCCA_BRANDING_APP_LOGO | "" | Path to file with logo |
--branding-app-title |
[branding] app_title | YUCCA_BRANDING_APP_TITLE | "" | Text in the field Title |
--branding-fav-icon |
[branding] fav_icon | YUCCA_BRANDING_FAV_ICON | "" | Path to file with favicon |
database¶
Connecting to database.
Supports 2 types of databases in which it stores the states:
- sqlite3
- postgres
In small installations it’s enough sqlite3, for a large number of streams we recommend to use postgres.
Command line arguments |
configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--database-type |
[database] type | YUCCA_DATABASE_TYPE | "sqlite3" | Type of using database (sqlite3 or postgres) |
--database-path |
[database] path | YUCCA_DATABASE_PATH | "" | Path to database file (only sqlite3) |
--database-host |
[database] host | YUCCA_DATABASE_HOST | "127.0.0.1:5432" | Connection address to database (only for postgres) |
--database-name |
[database] name | YUCCA_DATABASE_NAME | "yucca" | Database name (only for postgres) |
--database-user |
[database] user | YUCCA_DATABASE_USER | "postgres" | User name for connection (only for postgres) |
--database-password |
[database] password | YUCCA_DATABASE_PASSWORD | "postgres" | User password for connection (only for postgres) |
--database-ssl-mode |
[database] ssl_mode | YUCCA_DATABASE_SSL_MODE | "disable" | Use when connecting to SSL(uplink connection) (only for postgres) Possible values (disable, require, verify-full) |
--database-busy-timeout |
[database] busy_timeout | YUCCA_DATABASE_BUSY_TIMEOUT | 500 | Time-out in seconds for waiting unblocking the table SQLite (only for sqlite3) |
--database-ca-cert-path |
[database] ca_cert_path | YUCCA_DATABASE_CA_CERT_PATH | "/etc/ssl/certs" | Path to Certification Center Certificate in case of using SSL (only for postgres) |
--database-client-cert-path |
[database] client_cert_path | YUCCA_DATABASE_CLIENT_CERT_PATH | "" | Path to file with certificate in case of using SSL (only for postgres) |
--database-client-key-path |
[database] client_key_path | YUCCA_DATABASE_CLIENT_KEY_PATH | "" | Path to file with key in case of using SSL (only for postgres) |
--database-cache-mode |
[database] cache_mode | YUCCA_DATABASE_CACHE_MODE | "shared" | Cache mode option using for database connection (only for sqlite3) Possible values (private, shared) |
--database-conn-max-lifetime |
[database] conn_max_lifetime | YUCCA_DATABASE_CONN_MAX_LIFETIME | "0s" | Sets the maximum time during which a connection can be repeated |
--database-log-queries |
[database] log_queries | YUCCA_DATABASE_LOG_QUERIES | false | Log sql queries and runtime |
--database-max-open-conn |
[database] max_open_conn | YUCCA_DATABASE_MAX_OPEN_CONN | 0 | Maximum number of opened connections with database (only for postgres) |
--database-max-idle-conn |
[database] max_idle_conn | YUCCA_DATABASE_MAX_IDLE_CONN | 2 | Maximum number of connections while awaiting (only for postgres) |
executor¶
Streams settings launch.
Command line arguments |
Configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--executor |
[executor] type | YUCCA_EXECUTOR_TYPE | "docker" | Executor type for parking streams. Possible values (docker) |
--executor-log-level |
[executor] log_level | YUCCA_EXECUTOR_LOG_LEVEL | "info" | Logging level. Possible values (panic, fatal, error, warning, info, debug) |
--docker-image |
[executor.docker] image | YUCCA_EXECUTOR_DOCKER_IMAGE | "registry.gitlab.com/yuccastream/yucca" | The name of the image docker for worl as an executor. |
--docker-cap-add |
[executor.docker] cap_add | YUCCA_EXECUTOR_DOCKER_CAP_ADD | [] | Put Linux capabilities for docker container. |
--docker-cap-drop |
[executor.docker] cap_drop | YUCCA_EXECUTOR_DOCKER_CAP_DROP | [] | Drop Linux capabilities for docker cotainer. |
--docker-cpu-shares |
[executor.docker] cpu_shares | YUCCA_EXECUTOR_DOCKER_CPU_SHARES | 0 | CPU limit consumption for container. CPU quotas (relative weight compared to other containers) |
--docker-dns |
[executor.docker] dns | YUCCA_EXECUTOR_DOCKER_DNS | [] | DNS-server list for using by container. |
--docker-dns-search |
[executor.docker] dns_search | YUCCA_EXECUTOR_DOCKER_DNS_SEARCH | [] | DNS-domains list for searching |
--docker-memory |
[executor.docker] memory | YUCCA_EXECUTOR_DOCKER_MEMORY | 0 | Memory limit for container. |
--docker-memory-reservation |
[executor.docker] memory_reservation | YUCCA_EXECUTOR_DOCKER_MEMORY_RESERVATION | 0 | Memory soft limit |
--docker-memory-swap |
[executor.docker] memory_swap | YUCCA_EXECUTOR_DOCKER_MEMORY_SWAP | 0 | Total memory limit(memory + swap). |
--docker-nano-cpus |
[executor.docker] nano_cpus | YUCCA_EXECUTOR_DOCKER_NANO_CPUS | 0 | CPU quota in units. |
--docker-network-driver |
[executor.docker] network_driver | YUCCA_EXECUTOR_DOCKER_NETWORK_DRIVER | "bridge" | Network driver Docker (https://docs.docker.com/network/) |
--docker-oom-kill-disable |
[executor.docker] oom_kill_disable | YUCCA_EXECUTOR_DOCKER_OOM_KILL_DISABLE | false | Do not destroy processes in the container if there is a memory shortages (OOM) |
--docker-oom-score-adjust |
[executor.docker] oom_score_adjust | YUCCA_EXECUTOR_DOCKER_OOM_SCORE_ADJUST | 0 | OOM Indicators setting |
--docker-security-opt |
[executor.docker] security_opt | YUCCA_EXECUTOR_DOCKER_SECURITY_OPT | [] | List of string values for setting MLS system tags such as SELinux |
quotas¶
Global quotas on resourses. Can limit maximum number of certain resources that can be created\added as part of the installation.
Available only in Enterprise
Command line arguments |
Configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--quota-global-stream |
[quota] global_stream | YUCCA_QUOTA_GLOBAL_STREAM | -1 | Quota on making streams (-1 without limits) |
--quota-global-team |
[quota] global_team | YUCCA_QUOTA_GLOBAL_TEAM | -1 | Quota on making commands (-1 without limits) |
--quota-global-user |
[quota] global_user | YUCCA_QUOTA_GLOBAL_USER | -1 | Quota on making users (-1 without limits) |
server¶
Server global settings.
Command line arguments |
Configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--log-json |
- | - | true | Print logs in JSON format |
--log-level |
- | - | "info" | Logging level. Possible values (panic, fatal, error, warning, info, debug) |
--help |
- | - | - | Run help Yucca Server |
--config |
- | - | "/etc/yucca/yucca.toml" | Path to configuration file |
--data-dir |
[server] data_dir | YUCCA_SERVER_DATA_DIR | "" | Global directory for storing state (in case of using sqlite3) and streams data. Makes by default with name data in the same path as a binary file Yucca. |
--alloc-dir |
[server] alloc_dir | YUCCA_SERVER_ALLOC_DIR | "" | Streams datas directory (video archive etc..) Makes by default in data_dir, named alloc . |
--state-dir |
[server] state_dir | YUCCA_SERVER_STATE_DIR | "" | Directory with database file (in case of using sqlite3) Makes by default in data_dir, named server |
--default-language |
[server] default_language | YUCCA_SERVER_DEFAULT_LANGUAGE | "en" | Default interface language for new users |
--web.listen-address |
[server] listen_address | YUCCA_SERVER_LISTEN_ADDRESS | "127.0.0.1:9910" | IP address and port where the webinterface will be available |
--cert-file |
[server] cert_file | YUCCA_SERVER_CERT_FILE | "" | Path to certificate file in case of using HTTPS |
--cert-key |
[server] cert_key | YUCCA_SERVER_CERT_KEY | "" | Path to key file in case of using HTTPS |
--pprof |
[server] pprof | YUCCA_SERVER_PPROF | true | Debug mode |
streams¶
Settings related to stream behavior.
Command line arguments |
Configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--streams-archive-download-max-duration |
[streams] archive_download_max_duration | YUCCA_STREAMS_ARCHIVE_DOWNLOAD_MAX_DURATION | "24h" | Maximum allowable length of requested download time |
--streams-playlist-max-duration |
[streams] playlist_max_duration | YUCCA_STREAMS_PLAYLIST_MAX_DURATION | "3h" | Maximum allowable length of requested time for m3u8 playlist |
--streams-ranges-max-duration |
[streams] ranges_max_duration | YUCCA_STREAMS_RANGES_MAX_DURATION | "168h" | Maximum allowable length of time requested for ranges (archive range availability) |
--streams-uuid-slug |
[streams] uuid_slug | YUCCA_STREAMS_UUID_SLUG | false | Use as a public stream identifier generated by UUID |
telemetry¶
Uses for monitoring settings.
Command line arguments |
Configuration file | Environment variables | Default | Explanation |
---|---|---|---|---|
--telemetry |
[telemetry] enabled | YUCCA_TELEMETRY_ENABLED | true | enable / disable the telemetry |
--web.telemetry-path |
[telemetry] path | YUCCA_TELEMETRY_PATH | "/metrics" | URL for telemetry access |
--telemetry-basic-auth-username |
[telemetry] basic_auth_username | YUCCA_TELEMETRY_BASIC_AUTH_USERNAME | "" | Based authorisation login for telemetry access |
--telemetry-basic-auth-password |
[telemetry] basic_auth_password | YUCCA_TELEMETRY_BASIC_AUTH_PASSWORD | "" | Based authorisation password for telemetry access |