Environment Variables
These environment variables can be set in your docker-compose.yaml file. All variables are optional.
| Name | Type | Default | Description |
|---|---|---|---|
MUSIC_DIR | string | undefined | Absolute path to your music. |
PHOTOS_DIR | string | undefined | Absolute path to your photos. |
MOVIES_DIR | string | undefined | Absolute path to your movies. |
TV_DIR | string | undefined | Absolute path to your TV shows. |
HTTP_LOG_LEVEL | boolean | 0 | Set the log level¹ for HTTP requests. |
EVENTS_LOG_LEVEL | boolean | 0 | Set the log level¹ for the internal event system. |
INDEXING_LOG_LEVEL | boolean | 10 | Set the log level¹ for the indexing system. |
JOBS_LOG_LEVEL | boolean | 10 | Set the log level¹ for the jobs system. |
TRANSCODER_LOG_LEVEL | number | 0 | Set the log level¹ for the transcoding system. |
DATABASE_LOG_LEVEL | number | 0 | Set the log level¹ for database queries. |
MAX_CONCURRENT_JOBS | boolean | 3 | Max number of jobs that are allowed to run at the same time. |
SQLITE_PATH | string | undefined | Absolute path for where the server should store the SQLite database. Set to :memory: to use an in-memory database. When omitted, the server will automatically choose a location based on the operating system.If you change this after the server has already created a database, then you will need to copy the database to the new location manually. |
SQLITE_WAL | boolean | false | Enable Write-Ahead Logging (WAL) for SQLite. This is a significant performance optimization that allows for concurrent read/writes, but it cannot be enabled if your database is being used over a network connection (NFS, SMB, etc). Changing this requires a server restart. |
CARDINAL_POSTGRES | boolean | false | Use PostgreSQL instead of the default SQLite. |
POSTGRES_HOST | string | cardinal-postgres | PostgreSQL host name. |
POSTGRES_PORT | number | 5432 | PostgreSQL port number. |
POSTGRES_USER | string | cardinal | The PostgreSQL user. |
POSTGRES_PASSWORD | string | cardinal | The PostgreSQL user password. |
POSTGRES_DATABASE | number | — | PostgreSQL database name. Uses your Postgres user name if omitted. |
POSTGRES_SSL | boolean | false | Enable SSL for the PostgreSQL connection. |
SECURE_COOKIES | boolean | false | Allow the Media Server to issue cookies with stricter security settings. See Media Server → Accounts for more information on how sessions work. |
SIGNING_SECRET | string | undefined | Secret used to sign authentication tokens. Changing this will revoke all sessions. One is generated automatically if none is provided. |
RESET_LOCAL_USER_PW | string | undefined | Set this to the username of a local user to reset their password on the next startup. Their new password will be printed in the console. |
INDEXING_SCAN_TIMEOUT | number | 120 | Number of seconds the scanner will wait for the file system to respond. |
HEIF_CONVERSION_TIMEOUT | number | 60 | Number of seconds before we assume that the conversion failed. |
¹ Available log levels are:
20- Debug10- Info0- Silent
Higher numbers include logs from lower numbers. Setting 0 does not disable error logging.
Was this article helpful?