Files
playlink/docker-compose.yml
T
cdnutterandClaude Opus 5.5 90f5d88903 Configure Docker Compose through .env for Arcane
docker-compose.yml now reads every host-specific value (paths, user,
port, network, time zone) from .env with the previous values as
defaults. .env.example documents them; .env stays out of Git.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 10:09:59 -07:00

35 lines
1.3 KiB
YAML

# Every host-specific value comes from .env (see .env.example), so the
# stack can be built and kept in sync by Arcane (or any Compose host)
# without editing this file. Defaults below apply when a variable is unset.
services:
playlink:
build:
context: .
args:
VERSION: ${PLAYLINK_VERSION:-dev}
image: ${PLAYLINK_IMAGE:-playlink:latest}
container_name: ${PLAYLINK_CONTAINER_NAME:-playlink}
# Run as the user that owns your music (Unraid: nobody:users = 99:100).
user: "${PUID:-99}:${PGID:-100}"
ports:
- "${PLAYLINK_PORT:-7480}:7480"
environment:
TZ: ${TZ:-America/Los_Angeles}
PLAYLINK_ALLOWED_ROOTS: ${PLAYLINK_ALLOWED_ROOTS:-/data}
PLAYLINK_SECURE_COOKIES: ${PLAYLINK_SECURE_COOKIES:-false}
PLAYLINK_LOG_LEVEL: ${PLAYLINK_LOG_LEVEL:-info}
volumes:
- ${PLAYLINK_CONFIG_PATH:-/mnt/user/Aqua/playlink}:/config
# IMPORTANT: ONE folder that contains BOTH libraries. Hardlinks
# cannot cross Docker bind mounts, even on the same disk.
- ${PLAYLINK_DATA_PATH:-/mnt/user/Sapphire}:/data
restart: ${PLAYLINK_RESTART:-unless-stopped}
networks:
- playlink
networks:
playlink:
# An existing Docker network (e.g. the one your reverse proxy uses).
name: ${PLAYLINK_NETWORK:-chromanet}
external: true