Configuration
Location
You have to provide the location of the config file by setting the environment variable CORE_CONFIGFILE
to path to the config file. Example:
The config file is written in JSON format.
If the config file doesn't exist yet, it will be created and its fields will be filled with their default values.
If the config file is partially complete or of an older version, it will be upgraded and the missing fields will be filled with their default values.
If you don't provide the CORE_CONFIGFILE
environment variable, the default config values will be used and the configuration will not be persisted to the disk.
As of version 16.12.0:
If no path is given in the environment variable CORE_CONFIGFILE, different standard locations will be probed:
os.UserConfigDir() + /datarhei-core/config.js
os.UserHomeDir() + /.config/datarhei-core/config.js
./config/config.js
If the config.js doesn't exist in any of these locations, it will be assumed at ./config/config.js
A minimal valid config file must contain at least the config version:
Configuration
Configuration values can be changed by either editing the config file directly, or via the JSON API (API for short) or via environment variables (ENV for short). All environment variables have the prefix CORE_
followed by the JSON names in uppercase. Example:
Following, every field of the configuration file will be described in detail:
id (string)
ID of the Core. If not set, a UUIDv4 will be generated. Default: unset
name (string)
Human-readable name of the Core. If not set a custom name will be generated. Default: unset
address (string)
HTTP listening address.
Default: :8080
The default :8080
will listen on all interfaces on port 8080. To use a specific interface, write additionally it's IP, e.g. 127.0.0.1:8080
to only listen on the loopback interface.
log
Log settings.
pageLoggingdb
Database (processes, metadata, ...) endpoint.
pageDatabasehost
Configuration to detect or set the host-/domainname.
pageHostnameapi
API Security options.
pageAPI Securitytls
TLS/HTTPS settings (also required for RTMPS).
pageTLS / HTTPSstorage
General configuration, DiskFS, MemFS, and S3.
pageStoragertmp
RTMP server for publishing and playing streams.
pageRTMPsrt
SRT server for publishing and playing streams.
pageSRTffmpeg
General FFmpeg settings.
pageFFmpegsession
HLS-/MPEG-DASH session management and bandwidth limitations.
pageSessionsmetrics
General metrics settings.
pageMetricsroute
HTTP/S route configuration (e.g., to inject UI's).
pageRouterdebug
Core / Golang debugging options.
pageDebugupdate_check (bool)
All about datarhei Update-Checks and data tracking.
Check for updates and send anonymized data (default: false).
Requires service.url
.
IP addresses are anonymized and stored for 30 days on servers in the EU.
service.url (string)
URL for the update_check
Service API.
Default: https://service.datarhei.com
About anonymizied data:
We receive: id, os architecture, uptime, process stats (total: running, failed, killed), viewer count
The data is used exclusively for the further development of the products and error detection. Domains/IP addresses, companies, and persons remain anonymous.
Last updated