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
This commit is contained in:
2025-11-15 08:57:31 +01:00
parent 0f21392113
commit f9d716c80a
2 changed files with 1 additions and 27 deletions

View File

@@ -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}