Files
home-server/komodo/arr/m3u-editor/compose.yaml

66 lines
2.1 KiB
YAML

services:
m3u-editor:
image: sparkison/m3u-editor:${IMAGE_TAG:-latest}
container_name: m3u-editor
environment:
# Timezone
- TZ=Etc/UTC
# Application URL (change to your domain or IP)
- APP_URL=${APP_URL:-http://localhost}
- APP_PORT=${APP_PORT:-36400}
# Postgres Configuration
- ENABLE_POSTGRES=true # Use embedded Postgres, disable to use your own Postgres service
- PG_DATABASE=${PG_DATABASE:-m3ue}
- PG_USER=${PG_USER:-m3ue}
- PG_PASSWORD=${PG_PASSWORD:-changeme}
- PG_PORT=${PG_PORT:-5432}
# Database Connection (m3u-editor)
- DB_CONNECTION=pgsql
- DB_HOST=localhost
- DB_PORT=${PG_PORT:-5432}
- DB_DATABASE=${PG_DATABASE:-m3ue}
- DB_USERNAME=${PG_USER:-m3ue}
- DB_PASSWORD=${PG_PASSWORD:-changeme}
# Redis configuration
- REDIS_ENABLED=true # Enable embedded Redis
- REDIS_SERVER_PORT=${REDIS_PORT:-36790}
- REDIS_HOST=${REDIS_HOST:-localhost}
- REDIS_PASSWORD=${M3U_PROXY_TOKEN:-changeme} # Must match what start-container sets
# M3U Proxy Configuration (External)
- M3U_PROXY_ENABLED=true # Use embedded m3u-proxy instance
- M3U_PROXY_PORT=${M3U_PROXY_PORT:-38085}
- M3U_PROXY_HOST=${M3U_PROXY_HOST:-localhost} # Internal network hostname of m3u-proxy container
- M3U_PROXY_TOKEN=${M3U_PROXY_TOKEN:-changeme}
volumes:
# Persistent configuration data
- data:/var/www/config
# PostgreSQL data persistence
- pgdata:/var/lib/postgresql/data
# User-uploaded assets (logos, images, etc.)
# Without this, uploaded assets are lost on container recreation
- storage:/var/www/html/storage/app/public
restart: unless-stopped
ports:
- "${APP_PORT:-36400}:${APP_PORT:-36400}" # Main application port
# - "${PG_PORT:-5432}:${PG_PORT:-5432}" # Uncomment to expose PostgreSQL
healthcheck:
test: [ "CMD", "curl", "-f", "http://127.0.0.1:${APP_PORT:-36400}/up" ]
interval: 30s
timeout: 10s
retries: 5
start_period: 60s
volumes:
pgdata:
driver: local
storage:
driver: local
data:
driver: local