Files
pretranscode/compose.yaml
T

53 lines
1.6 KiB
YAML

services:
pretranscode:
build:
context: ${PRETRANSCODE_BUILD_CONTEXT:-.}
image: ${PRETRANSCODE_IMAGE:-pretranscode:latest}
pull_policy: never
restart: unless-stopped
init: true
user: "${PRETRANSCODE_UID:-1000}:${PRETRANSCODE_GID:-1000}"
environment:
SOURCE_ROOT: /source
VIEW_ROOT: /view
CACHE_ROOT: /cache
STATE_ROOT: /state
JELLYFIN_URL: ${JELLYFIN_URL:?}
JELLYFIN_API_KEY: ${JELLYFIN_API_KEY:?}
JELLYFIN_LIBRARY_ROOT: ${JELLYFIN_LIBRARY_ROOT:-/data/library}
JELLYFIN_ORIGINAL_ROOT: ${JELLYFIN_ORIGINAL_ROOT:-/data/original}
JELLYFIN_CACHE_ROOT: ${JELLYFIN_CACHE_ROOT:-/data/cache}
CACHE_MAX_BYTES: ${CACHE_MAX_BYTES:-1000000000000}
SERIES_COOLDOWN_SECONDS: ${SERIES_COOLDOWN_SECONDS:-3600}
POLL_SECONDS: ${POLL_SECONDS:-5}
RESCAN_SECONDS: ${RESCAN_SECONDS:-300}
H264_CRF: ${H264_CRF:-18}
H264_PRESET: ${H264_PRESET:-medium}
H264_MAXRATE: ${H264_MAXRATE:-15M}
H264_BUFSIZE: ${H264_BUFSIZE:-30M}
volumes:
- ${MEDIA_LIBRARY_PATH:?}:/source:ro
- ${PRETRANSCODE_VIEW_PATH:?}:/view
- ${PRETRANSCODE_CACHE_PATH:?}:/cache
- ${PRETRANSCODE_STATE_PATH:?}:/state
networks:
- media
cpu_shares: 2
read_only: true
tmpfs:
- /tmp
security_opt:
- no-new-privileges:true
stop_grace_period: 30s
healthcheck:
test: ["CMD-SHELL", "pgrep -x pretranscode >/dev/null"]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s
networks:
media:
external: true
name: ${MEDIA_NETWORK:-media-internal}