Environment Variables

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 /memfsis 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.

For latest

You can also provide them on the command line, whatever you prefer. If the same environment variable is set in the

Learn more

Why do I see ENV and cannot select anything?How do I install Docker?InstallingKnowledge Base

Last updated