60 lines
1.8 KiB
YAML
60 lines
1.8 KiB
YAML
services:
|
|
jellyfin:
|
|
image: lscr.io/linuxserver/jellyfin:latest
|
|
container_name: jellyfin
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8096:8096/tcp"
|
|
- "7359:7359/udp"
|
|
volumes:
|
|
# HACK: Binding while bootstrapping, testing
|
|
# - jellyfin-cfg:/config
|
|
- ./config/jellyfin:/config
|
|
- /mnt/mediaserver/media/Movies:/media/Movies
|
|
- /mnt/mediaserver/media/Shows:/media/Shows
|
|
devices:
|
|
- /dev/dri:/dev/dri
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=proxy"
|
|
- "traefik.http.services.jellyfin.loadbalancer.server.port=8096"
|
|
# Prod Router
|
|
- "traefik.http.routers.jellyfin.rule=Host(`media.forust.xyz`)"
|
|
- "traefik.http.routers.jellyfin.entrypoints=websecure"
|
|
- "traefik.http.routers.jellyfin.tls=true"
|
|
# Local Router
|
|
- "traefik.http.routers.jellyfin-local.rule=Host(`media.workstation.internal`) || Host(`ms.internal`)"
|
|
- "traefik.http.routers.jellyfin-local.entrypoints=websecure"
|
|
- "traefik.http.routers.jellyfin-local.tls=true"
|
|
# Dev Router
|
|
- "traefik.http.routers.jellyfin-dev.rule=Host(`media.gigaforust.internal`)"
|
|
- "traefik.http.routers.jellyfin-dev.entrypoints=websecure"
|
|
- "traefik.http.routers.jellyfin-dev.tls=true"
|
|
networks:
|
|
- proxy
|
|
- streaming
|
|
qbittorrent:
|
|
image: lscr.io/linuxserver/qbittorrent:latest
|
|
container_name: qbittorrent
|
|
restart: unless-stopped
|
|
environment:
|
|
- WEBUI_PORT=8080
|
|
volumes:
|
|
# HACK: Binding while bootstrapping, testing
|
|
# - qbittorrent-cfg:/config
|
|
- ./config/qbittorrent:/config
|
|
- /mnt/mediaserver/downloads:/downloads
|
|
ports:
|
|
- 8080:8080
|
|
- 6881:6881
|
|
- 6881:6881/udp
|
|
networks:
|
|
- streaming
|
|
volumes:
|
|
jellyfin-cfg:
|
|
qbittorrent-cfg:
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
streaming:
|
|
name: streaming |