Comment on page
Environment Variables
The environment variables can be set in the file
.env
, e.g.CORE_API_AUTH_USERNAME=admin
CORE_API_AUTH_PASSWORD=datarhei
...
.env
file and on the command line, the one set on the command line will overrule the one from the .env
file.The currently known environment variables (but not all will be respected) are:
Name | Default | Description |
---|---|---|
CORE_CONFIGFILE | (not set) | Path to a config file. The following environment variables will override the respective values in the config file. |
CORE_ADDRESS | :8080 | HTTP listening address. |
CORE_LOG_LEVEL | info | silent, error, warn, info, debug. |
CORE_LOG_TOPICS | (not set) | List of topics to log (comma separated) |
CORE_LOG_MAXLINES | 1000 | Number of latest log lines to keep in memory. |
CORE_DB_DIR | . | Directory for holding the operational data. This directory must exist. |
CORE_HOST_NAME | (not set) | Set to the domain name of the host this instance is running on. |
CORE_HOST_AUTO | true | Enable detection of public IP addresses. |
CORE_API_READ_ONLY | false | Allow only ready only access to the API |
CORE_API_ACCESS_HTTP_ALLOW | (not set) | Comma separated list of IP ranges in CIDR notation (HTTP traffic), e.g. 127.0.0.1/32,::1/128 . |
CORE_API_ACCESS_HTTP_BLOCK | (not set) | Comma separated list of IP ranges in CIDR notation (HTTP traffic), e.g. 127.0.0.1/32,::1/128 . |
CORE_API_ACCESS_HTTPS_ALLOW | (not set) | Comma separated list of IP ranges in CIDR notation (HTTPS traffic), e.g. 127.0.0.1/32,::1/128 . |
CORE_API_ACCESS_HTTPS_BLOCK | (not set) | Comma separated list of IP ranges in CIDR notation (HTTPS traffic), e.g. 127.0.0.1/32,::1/128 . |
CORE_API_AUTH_ENABLE | true | Set to false to disable auth for all clients. |
CORE_API_AUTH_DISABLE_LOCALHOST | false | Set to true to disable auth for clients from localhost. |
CORE_API_AUTH_USERNAME | (required) | Username for auth. |
CORE_API_AUTH_PASSWORD | (required) | Password for auth. |
CORE_API_AUTH_JWT_SECRET | (not set) | A secret for en- and decrypting the JWT. If not set, a secret will be generated. |
CORE_API_AUTH_AUTH0_ENABLE | false | Enable Auth0. |
CORE_API_AUTH_AUTH0_TENANTS | (not set) | List of base64 encoded Auth0 tenant JSON objects (comma-separated). The tenant JSON object is defined as {"domain":string,"audience":string,"users":array of strings} |
CORE_TLS_ADDRESS | :8181 | Port to listen on for HTTPS requests. |
CORE_TLS_ENABLE | false | Set to true to enable TLS support. |
CORE_TLS_AUTO | false | Set to true to enable automatic retrieval of a Let's Encrypt certificate. Requires CORE_TLS_ENABLE to be true and CORE_HOST_NAME to be set with CORE_HOST_AUTO to false . |
CORE_TLS_CERTFILE | (not set) | TLS certificate file in PEM format. |
CORE_TLS_KEYFILE | (not set) | TLS key file in PEM format. |
CORE_STORAGE_DISK_DIR | . | A directory that will be exposed by HTTP on /. This directory must exist. |
CORE_STORAGE_DISK_MAXSIZEMBYTES | 0 | Max. allowed megabytes for CORE_STORAGE_DISK_DIR . |
CORE_STORAGE_DISK_CACHE_ENABLE | true | Enable cache for files from CORE_STORAGE_DISK_DIR . |
CORE_STORAGE_DISK_CACHE_MAXSIZEMBYTES | 0 | Max. allowed cache size, 0 for unlimited. |
CORE_STORAGE_DISK_CACHE_TTLSECONDS | 300 | Seconds to keep files in cache. |
CORE_STORAGE_DISK_CACHE_MAXFILESIZEMBYTES | 1 | Max. file size to put in cache. |
CORE_STORAGE_DISK_CACHE_TYPES | (not set) | List of file extensions to cache (space-separated, e.g. ".html .js"), empty for all. |
CORE_STORAGE_MEMORY_AUTH_ENABLE | true | Enable basic auth for PUT,POST, and DELETE on /memfs. |
CORE_STORAGE_MEMORY_AUTH_USERNAME | (not set) | Username for Basic-Auth of /memfs . Required if auth is enabled. |
CORE_STORAGE_MEMORY_AUTH_PASSWORD | (not set) | Password for Basic-Auth of /memfs . Required if auth is enabled. |
CORE_STORAGE_MEMORY_MAXSIZEMBYTES | 0 | Max. allowed megabytes for /memfs . Any value <= 0 means unlimited. |
CORE_STORAGE_MEMORY_PURGE | false | Set to true to remove the oldest entries if the /memfs is full. |
CORE_STORAGE_COCORE_ORIGINS | * | List of allowed CORS origins (comma separated). Will be used for / and /memfs . |
CORE_STORAGE_MIMETYPES_FILE | mime.types | Path to file with MIME type definitions. |
CORE_RTMP_ENABLE | false | Enable RTMP server. |
CORE_RTMP_ENABLE_TLS | false | Enable RTMP over TLS (RTMPS). Requires CORE_TLS_ENABLE to be true . |
CORE_RTMP_ADDRESS | :1935 | RTMP server listen address. |
CORE_RTMP_APP | / | RTMP app for publishing. |
CORE_RTMP_TOKEN | (not set) | RTMP token for publishing and playing. The token is the value of the URL query parameter token . |
CORE_FFMPEG_BINARY | ffmpeg | Path to FFmpeg binary. |
CORE_FFMPEG_MAXPROCESSES | 0 | Max. allowed simultaneously running FFmpeg instances. Any value <= 0 means unlimited. |
CORE_FFMPEG_ACCESS_INPUT_ALLOW | (not set) | List of pattern for allowed input URI (space-separated), leave emtpy to allow any. |
CORE_FFMPEG_ACCESS_INPUT_BLOCK | (not set) | List of pattern for blocked input URI (space-separated), leave emtpy to block none. |
CORE_FFMPEG_ACCESS_OUTPUT_ALLOW | (not set) | List of pattern for allowed output URI (space-separated), leave emtpy to allow any. |
CORE_FFMPEG_ACCESS_OUTPUT_BLOCK | (not set) | List of pattern for blocked output URI (space-separated), leave emtpy to block none. |
CORE_FFMPEG_LOG_MAXLINES | 50 | Number of latest log lines to keep for each process. |
CORE_FFMPEG_LOG_MAXHISTORY | 3 | Number of latest logs to keep for each process. |
CORE_PLAYOUT_ENABLE | false | Enable playout API where available |
CORE_PLAYOUT_MINPORT | 0 | Min. port a playout server per input can run on. |
CORE_PLAYOUT_MAXPORT | 0 | Max. port a playout server per input can run on. |
CORE_DEBUG_PROFILING | false | Set to true to enable profiling endpoint on /profiling . |
CORE_DEBUG_FORCEGC | 0 | Number of seconds between forcing GC to return memory to the OS. Use in conjuction with GODEBUG=madvdontneed=1 . Any value <= 0 means not to force GC. |
CORE_METRICS_ENABLE | false | Enable collecting historic metrics data. |
CORE_METRICS_ENABLE_PROMETHEUS | false | Enable prometheus endpoint /metrics. |
CORE_METRICS_RANGE_SECONDS | 300 | Seconds to keep history metric data. |
CORE_METRICS_INTERVAL_SECONDS | 2 | Interval for collecting metrics. |
CORE_SESSIONS_ENABLE | false | Enable HLS statistics for /memfs . |
CORE_SESSIONS_IP_IGNORELIST | (not set) | Comma separated list of IP ranges in CIDR notation, e.g. 127.0.0.1/32,::1/128 . |
CORE_SESSIONS_SESSION_TIMEOUT_SEC | 30 | Timeout of a session in seconds. |
CORE_SESSIONS_PERSIST | false | Whether to persist the session history. Will be stored in CORE_DB_DIR . |
CORE_SESSIONS_MAXBITRATE_MBIT | 0 | Max. allowed outgoing bitrate in mbit/s, 0 for unlimited. |
CORE_SESSIONS_MAXSESSIONS | 0 | Max. allowed number of simultaneous sessions, 0 for unlimited. |
CORE_ROUTER_BLOCKED_PREFIXES | /api | List of path prefixes that can't be routed. |
CORE_ROUTER_ROUTES | (not set) | List of route mappings of the form [from]:[to], e.g. /foo:/bar . Leave empty for no routings. |
You can also provide them on the command line, whatever you prefer. If the same environment variable is set in the
Last modified 1yr ago