From 4ca05459b15da5a0db758f14b128c3b1d8f70bcf Mon Sep 17 00:00:00 2001 From: Ammar Hussein Date: Sun, 8 Dec 2024 21:37:00 -0800 Subject: [PATCH] add beets support --- .env.sample | 5 +++++ README.md | 14 +++++++++++++- compose.beets.yml | 21 +++++++++++++++++++++ compose.yml | 4 +++- 4 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 compose.beets.yml diff --git a/.env.sample b/.env.sample index 04e4583..36fba01 100644 --- a/.env.sample +++ b/.env.sample @@ -6,3 +6,8 @@ DOMAIN=navidrome.example.com #EXTRA_DOMAINS=', `www.navidrome.example.com`' LETS_ENCRYPT_ENV=production + +COMPOSE_FILE="compose.yml" + +## Add a beets container +# COMPOSE_FILE="$COMPOSE_FILE:compose.beets.yml" diff --git a/README.md b/README.md index 77898aa..e4aa6a5 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ * **Category**: Apps -* **Status**: 0 +* **Status**: 1 * **Image**: [`navidrome`](https://hub.docker.com/r/navidrome), 4, upstream * **Healthcheck**: No * **Backups**: No @@ -22,3 +22,15 @@ * `abra app deploy ` For more, see [`docs.coopcloud.tech`](https://docs.coopcloud.tech). + +## Beets + +[Beets](https://beets.readthedocs.io/en/stable/index.html) is a handy music library organizer. + +To add beets support: +- `abra app config ` +- uncomment the line `# COMPOSE_FILE="$COMPOSE_FILE:compose.beets.yml"` +- deploy +- use `abra app run beets bash` + +You will be able to see your music library under `/music` and you can add new music to `/donwload` by adding them to the `beets_ingest` volume then import them using `beet import [-m] /download/{music_folder}` or whatever [beets cli](https://beets.readthedocs.io/en/stable/reference/cli.html) command you want to run! diff --git a/compose.beets.yml b/compose.beets.yml new file mode 100644 index 0000000..fe85247 --- /dev/null +++ b/compose.beets.yml @@ -0,0 +1,21 @@ +version: "3.8" + +services: + beets: + image: "lscr.io/linuxserver/beets:2.2.0-ls248" + environment: + - PUID=1000 + - PGID=1000 + volumes: + - navidrome_music:/music + - beets_config:/config + - beets_ingest:/download + deploy: + restart_policy: + condition: on-failure + networks: + - internal + +volumes: + beets_config: + beets_ingest: diff --git a/compose.yml b/compose.yml index 3b39453..72052b7 100644 --- a/compose.yml +++ b/compose.yml @@ -6,12 +6,13 @@ services: image: deluan/navidrome:pr-3349 networks: - proxy + - internal volumes: - navidrome_data:/data - navidrome_music:/music:ro environment: ND_SCANSCHEDULE: 1h - ND_LOGLEVEL: info + ND_LOGLEVEL: info ND_SESSIONTIMEOUT: 24h ND_BASEURL: "https://${DOMAIN}" deploy: @@ -31,6 +32,7 @@ services: networks: proxy: external: true + internal: volumes: navidrome_data: navidrome_music: