homeserver/docker/stacks/media/media.yml
2025-01-02 21:15:25 +01:00

174 lines
4.4 KiB
YAML

services:
jellyfin:
image: lscr.io/linuxserver/jellyfin
container_name: jellyfin
networks:
- proxy
- media
group_add:
- ${JF_RENDER_GROUP}
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
- DOCKER_MODS=linuxserver/mods:jellyfin-amd
volumes:
- ${APPS_DIR}/jellyfin:/config
- ${DATA_DIR}/media/movies:/data/movies:ro
- ${DATA_DIR}/media/tvshows:/data/tvshows:ro
- ${DATA_DIR}/media/music:/data/music:ro
ports:
- 8096:8096
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
- /dev/dri/card0:/dev/dri/card0
restart: unless-stopped
minidlna:
image: vladgh/minidlna
container_name: minidlna
# You need to run the container in host mode for it to be able to receive UPnP broadcast packets.
network_mode: host
environment:
- MINIDLNA_PORT=${MINIDLNA_PORT}
- MINIDLNA_MEDIA_DIR=${MINIDLNA_MEDIA_DIR}
- MINIDLNA_FRIENDLY_NAME=${MINIDLNA_FRIENDLY_NAME}
volumes:
- ${DATA_DIR}/media/music:/media
radarr:
image: lscr.io/linuxserver/radarr
container_name: radarr
networks:
- media
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
volumes:
- ${APPS_DIR}/radarr:/config
- ${DATA_DIR}/media/movies:/movies
- ${DATA_DIR}/downloads:/downloads
ports:
- 7878:7878
restart: unless-stopped
sonarr:
image: lscr.io/linuxserver/sonarr
container_name: sonarr
networks:
- media
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
volumes:
- ${APPS_DIR}/sonarr:/config
- ${DATA_DIR}/media/tvshows:/tvshows
- ${DATA_DIR}/downloads:/downloads
ports:
- 8989:8989
restart: unless-stopped
prowlarr:
image: lscr.io/linuxserver/prowlarr
container_name: prowlarr
networks:
- media
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
volumes:
- ${APPS_DIR}/prowlarr:/config
ports:
- 9696:9696
restart: unless-stopped
flaresolverr:
image: ghcr.io/flaresolverr/flaresolverr
container_name: flaresolverr
networks:
- media
environment:
- TZ=${TIMEZONE}
ports:
- 8191:8191
restart: unless-stopped
bazarr:
image: lscr.io/linuxserver/bazarr
container_name: bazarr
networks:
- media
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
volumes:
- ${APPS_DIR}/bazarr:/config
- ${DATA_DIR}/media/movies:/movies
- ${DATA_DIR}/media/tvshows:/tvshows
ports:
- 6767:6767
restart: unless-stopped
lidarr:
image: lscr.io/linuxserver/lidarr
container_name: lidarr
networks:
- media
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
volumes:
- ${APPS_DIR}/lidarr:/config
- ${DATA_DIR}/media/music:/music
- ${DATA_DIR}/downloads:/downloads
ports:
- 8686:8686
restart: unless-stopped
qbittorrent:
image: linuxserver/qbittorrent
container_name: qbittorrent
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
- UMASK_SET=022
- WEBUI_PORT=8183
network_mode: "container:gluetun"
volumes:
- ${APPS_DIR}/qbittorrent/config:/config
- ${DATA_DIR}/downloads:/downloads
- ${APPS_DIR}/qbittorrent/vuetorrent:/vuetorrent
restart: unless-stopped
ytdl-material:
image: tzahi12345/youtubedl-material:sha-208cd83
container_name: ytdl-material
networks:
- media
environment:
- UID=${PUID}
- GID=${PGID}
- ALLOW_CONFIG_MUTATIONS=true
volumes:
- ${APPS_DIR}/ytdl-material:/app/appdata
- ${DATA_DIR}/ytdl/audio:/app/audio
- ${DATA_DIR}/ytdl/video:/app/video
- ${DATA_DIR}/ytdl/subscriptions:/app/subscriptions
- ${DATA_DIR}/ytdl/users:/app/users
ports:
- "8998:17442"
restart: unless-stopped
networks:
proxy:
external:
name: proxy
media:
name: media