Environment Variables
Environment variables can be used in your docker-compose.yaml
file under the environment
key, or via the CLI using the -e
flag, to alter the functionality and output of the app.
Docker compose example:
services:
m3u-editor:
image: sparkison/m3u-editor:latest
container_name: m3u-editor
environment:
- VARIABLE_NAME=value
...
or via CLI: docker run --name m3u-editor -e VARIABLE_NAME=value ...
🛠️ Variables
Variable Name | Accepted Values/Types | Default Value | Description |
---|---|---|---|
PUID | int | 1000 | user ID to run under (not currently implemented) |
PGID | int | 1000 | group ID to run under (not currently implemented) |
APP_DEBUG | true or false | false | output additional info to the log file |
APP_URL | fully qualified domain name | http://localhost | url or IP address where app is being hosted, including http |
APP_PORT | valid port number | 36400 | the port to run the app on |
REVERB_SCHEME | http or https | http | how to access websockets |
REVERB_HOST | valid hostname | localhost | where the websocket server is running (may need to change to host IP) |
REVERB_PORT | valid port number | 36800 | port used to access websocket server |
REVERB_VERIFY | true or false | true | set to false to disable SSL verification. Set to true (default) to enable |
REDIS_HOST | valid hostname | localhost | default uses container instance |
REDIS_SERVER_PORT | valid port number | 36790 | default uses container instance |
PROXY_URL_OVERRIDE | fully qualified domain name | null | url or IP address where app is being hosted, including http. If null or not set, will use APP_URL |
PROXY_FFMPEG_PATH | ffmpeg or jellyfin-ffempg , or valid path to executable | null | valid path to executable if not ffmpeg or jellyfin-ffempg for local instance |
PROXY_FFMPEG_ADDITIONAL_ARGS | valid ffmpeg input args | null | arguments will be added before the input source |
PROXY_FFMPEG_CODEC_VIDEO | valid video codec | null | valid ffmpeg video codec, e.g. “h265” |
PROXY_FFMPEG_CODEC_AUDIO | valid audio codec | null | valid ffmpeg audio codec, e.g. “aac” |
PROXY_FFMPEG_CODEC_SUBTITLES | valid subtitle codec | null | valid ffmpeg subtitle codec, e.g. “srt” |
MAX_CHANNELS | int | 50000 | the maximum number of channels to import for m3u playlists (does not apply to Xtream API playlists) |
BROADCAST_CONNECTION | reverb or null | reverb | set to null to disable websockets server. Set to reverb (default) to enable |
ENABLE_POSTGRES | true or false | false | set to true to enable the internal PostgreSQL instance |
PG_DATABASE | string | m3ue | enter a valid database name, e.g. “m3ue” |
PG_USER | string | root | user to create/update for PG_DATABASE |
PG_PASSWORD | string | root | password to set/udpate for PG_USER |
PG_PORT | int | 5432 | any valid port, does not need to be exposed |
DB_CONNECTION | sqlite or pgsql | sqlite | set to pgsql to use PostgreSQL |
DB_HOST | valid hostname | null | valid hostname for PostgreSQL. If ENABLE_POSTGRES is true you can use localhost |
DB_PORT | int | null | valid port number for PostgreSQL. If ENABLE_POSTGRES is true you can use PG_PORT |
DB_DATABASE | string | null | valid database name for PostgreSQL. If ENABLE_POSTGRES is true you can use PG_DATABASE |
DB_USERNAME | string | null | valid database user for PostgreSQL. If ENABLE_POSTGRES is true you can use PG_USER |
DB_PASSWORD | string | null | valid password for PostgreSQL. If ENABLE_POSTGRES is true you can use PG_PASSWORD |