Arcane pulls every service's image: reference before deploying, and playlink isn't published to a registry. Drop the image name and set pull_policy: build so the image is always built from the repository. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
38 lines
1.5 KiB
YAML
38 lines
1.5 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}
|
|
# No image: line on purpose. The image is always built from this
|
|
# repository, never pulled (it isn't published to a registry), so
|
|
# deploy tools like Arcane don't try to pull a name that doesn't exist.
|
|
pull_policy: build
|
|
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
|