Environment Variables
Last updated
Last updated
The environment variables can be set in the file .env
, e.g.
.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 |
---|---|---|
You can also provide them on the command line, whatever you prefer. If the same environment variable is set in the
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.