From f9d716c80a5143900ab3a4a74866bc4df99971ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Sat, 15 Nov 2025 08:57:31 +0100 Subject: [PATCH] feat: add Music support to Jellyfin, remove music_files service - Add /mnt/hidrive/users/valknar/Music mount to Jellyfin - Remove standalone nginx music_files service - Jellyfin now serves images, videos, and music - Supports transcoding, download tracking, and direct URLs via API --- arty.yml | 1 - media/compose.yaml | 27 +-------------------------- 2 files changed, 1 insertion(+), 27 deletions(-) diff --git a/arty.yml b/arty.yml index 452d3c8..fd07f0a 100644 --- a/arty.yml +++ b/arty.yml @@ -157,7 +157,6 @@ envs: MEDIA_FILESTASH_CANARY: true MEDIA_NAVIDROME_IMAGE: deluan/navidrome:latest MEDIA_NAVIDROME_TRAEFIK_HOST: navidrome.media.pivoine.art - MEDIA_MUSIC_FILES_TRAEFIK_HOST: music.media.pivoine.art # PairDrop DROP_TRAEFIK_ENABLED: true DROP_COMPOSE_PROJECT_NAME: drop diff --git a/media/compose.yaml b/media/compose.yaml index 4d9804e..93dfa35 100644 --- a/media/compose.yaml +++ b/media/compose.yaml @@ -9,6 +9,7 @@ services: - jellyfin_cache:/cache - /mnt/hidrive/users/valknar/Pictures:/media/pictures:ro - /mnt/hidrive/users/valknar/Videos:/media/videos:ro + - /mnt/hidrive/users/valknar/Music:/media/music:ro environment: TZ: ${TIMEZONE:-Europe/Berlin} networks: @@ -62,32 +63,6 @@ services: - 'traefik.docker.network=${NETWORK_NAME}' - 'com.centurylinklabs.watchtower.enable=${WATCHTOWER_LABEL_ENABLE}' - # Music Files - Static file server for direct MP3 links - music_files: - image: nginx:alpine - container_name: ${MEDIA_COMPOSE_PROJECT_NAME}_music_files - restart: unless-stopped - volumes: - - /mnt/hidrive/users/valknar/Music:/usr/share/nginx/html:ro - networks: - - compose_network - labels: - - 'traefik.enable=${MEDIA_TRAEFIK_ENABLED}' - # HTTP to HTTPS redirect - - 'traefik.http.middlewares.${MEDIA_COMPOSE_PROJECT_NAME}-music-redirect-web-secure.redirectscheme.scheme=https' - - 'traefik.http.routers.${MEDIA_COMPOSE_PROJECT_NAME}-music-web.middlewares=${MEDIA_COMPOSE_PROJECT_NAME}-music-redirect-web-secure' - - 'traefik.http.routers.${MEDIA_COMPOSE_PROJECT_NAME}-music-web.rule=Host(`${MEDIA_MUSIC_FILES_TRAEFIK_HOST}`)' - - 'traefik.http.routers.${MEDIA_COMPOSE_PROJECT_NAME}-music-web.entrypoints=web' - # HTTPS router - - 'traefik.http.routers.${MEDIA_COMPOSE_PROJECT_NAME}-music-web-secure.rule=Host(`${MEDIA_MUSIC_FILES_TRAEFIK_HOST}`)' - - 'traefik.http.routers.${MEDIA_COMPOSE_PROJECT_NAME}-music-web-secure.tls.certresolver=resolver' - - 'traefik.http.routers.${MEDIA_COMPOSE_PROJECT_NAME}-music-web-secure.entrypoints=web-secure' - # Service - - 'traefik.http.services.${MEDIA_COMPOSE_PROJECT_NAME}-music-web-secure.loadbalancer.server.port=80' - - 'traefik.docker.network=${NETWORK_NAME}' - # Watchtower - - 'com.centurylinklabs.watchtower.enable=${WATCHTOWER_LABEL_ENABLE}' - # Navidrome - Music streaming server with public sharing navidrome: image: ${MEDIA_NAVIDROME_IMAGE:-deluan/navidrome:latest}