ca82862346
The legacy SMARTMUSIC_ prefix dates from when the project was specced as "smart-music" before being renamed to Minstrel. Hard cutover to MINSTREL_* across config.go, tests, config.example.yaml, README, and docker-compose. Also renames SMARTMUSIC_CONFIG in cmd/minstrel/main.go which was missed in the original audit. Also seeds Auth.AdminBootstrap.Username = "admin" in Default() so MINSTREL_DATABASE_URL is the only env var required for a fresh prod deployment — the bootstrap auto-generates a password and prints it to stderr. Drops the now-redundant MINSTREL_AUTH_ADMIN_USERNAME=admin line from the README quickstart and docker-compose. M1 follow-up from the #363 final review: guards MINSTREL_BRANDING_APP_NAME and _DESCRIPTION against empty-string overrides — empty would have shipped <title></title> to share-preview crawlers. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
version: "3.9"
|
|
|
|
# Local development environment for Minstrel.
|
|
# Not used by CI — integration tests run against this compose stack manually:
|
|
# docker compose up -d postgres
|
|
# MINSTREL_TEST_DATABASE_URL=postgres://minstrel:minstrel@localhost:5432/minstrel?sslmode=disable \
|
|
# go test ./...
|
|
#
|
|
# Full stack (server + db):
|
|
# docker compose up --build
|
|
|
|
services:
|
|
postgres:
|
|
image: postgres:16-alpine
|
|
environment:
|
|
POSTGRES_USER: minstrel
|
|
POSTGRES_PASSWORD: minstrel
|
|
POSTGRES_DB: minstrel
|
|
networks:
|
|
- minstrel
|
|
# ports:
|
|
# - "5432:5432"
|
|
volumes:
|
|
- minstrel-pgdata:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U minstrel -d minstrel"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 10
|
|
|
|
minstrel:
|
|
build: .
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
environment:
|
|
MINSTREL_DATABASE_URL: postgres://minstrel:minstrel@postgres:5432/minstrel?sslmode=disable
|
|
MINSTREL_LOG_FORMAT: text
|
|
MINSTREL_LIBRARY_SCAN_PATHS: /music
|
|
MINSTREL_LIBRARY_SCAN_ON_STARTUP: "true"
|
|
# MINSTREL_AUTH_ADMIN_PASSWORD left unset on purpose — bootstrap
|
|
# generates one and prints it to stderr on first boot. Watch the logs
|
|
# of the minstrel service the first time you bring the stack up.
|
|
networks:
|
|
- minstrel
|
|
ports:
|
|
- "4533:4533"
|
|
volumes:
|
|
# Point ./music at your test library (symlink, bind-mount, whatever).
|
|
# Read-only so a buggy scanner can't rewrite your files.
|
|
- /mnt/Media/Music:/music:ro
|
|
|
|
volumes:
|
|
minstrel-pgdata:
|
|
|
|
networks:
|
|
minstrel: |