docker/media-stack/media-stack.yml

119 lines
3.1 KiB
YAML

version: "3.1"
services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
cap_add:
- NET_ADMIN
ports:
- 3000:3000 # chromium
- 9091:9091 # transmission
- 8191:8191 # flaresolverr
environment:
- VPN_SERVICE_PROVIDER=custom
- VPN_TYPE=wireguard
- VPN_PORT_FORWARDING=on
- VPN_PORT_FORWARDING_PROVIDER=protonvpn
env_file:
- .env
restart: unless-stopped
networks:
- proxy
transmission:
image: linuxserver/transmission:version-3.00-r8
container_name: transmission
environment:
- PUID=1001
- PGID=1001
- TZ=America/New_York
volumes:
- /media/transmission/config:/config
- /media/transmission/watch:/watch
- /media/transmission/downloads:/downloads
# /downloads/movies in transmission webUI settings
network_mode: service:gluetun
depends_on:
gluetun:
condition: service_healthy
restart: unless-stopped
chromium:
image: linuxserver/chromium
container_name: chromium
security_opt:
- seccomp:unconfined #optional
environment:
- PUID=1001
- PGID=1001
- TZ=America/New_York
volumes:
- ./chromium-config:/config
network_mode: service:gluetun
depends_on:
gluetun:
condition: service_healthy
shm_size: "1gb"
restart: unless-stopped
prowlarr:
image: linuxserver/prowlarr:latest
container_name: prowlarr
environment:
- PUID=1001
- PGID=1001
- TZ=America/New_York
volumes:
- ./prowlarr-config:/config
labels:
- "traefik.enable=true"
- "traefik.http.routers.prowlarr.entrypoints=websecure"
- "traefik.http.routers.prowlarr.rule=Host(`prowlarr.meftimes.com`)"
- "traefik.http.routers.prowlarr.middlewares=authelia@docker"
- "traefik.http.services.prowlarr.loadbalancer.server.port=9696"
network_mode: service:gluetun
depends_on:
gluetun:
condition: service_healthy
restart: unless-stopped
flaresolverr:
image: flaresolverr/flaresolverr:latest
container_name: flaresolverr
environment:
- LOG_LEVEL=${LOG_LEVEL:-info}
- LOG_HTML=${LOG_HTML:-false}
- CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none}
- TZ=Europe/London
network_mode: service:gluetun
depends_on:
gluetun:
condition: service_healthy
restart: unless-stopped
jellyfin:
image: linuxserver/jellyfin:latest
container_name: jellyfin
environment:
- PUID=1001
- PGID=1001
- TZ=America/New_York
volumes:
- ./jellyfin-config:/config
- /media/transmission/downloads/tvshows:/data/tvshows
- /media/transmission/downloads/movies:/data/movies
labels:
- "traefik.enable=true"
- "traefik.http.routers.jellyfin.entrypoints=websecure"
- "traefik.http.routers.jellyfin.rule=Host(`jellyfin.meftimes.com`)"
# - "traefik.http.routers.jellyfin.middlewares=authelia@docker"
- "traefik.http.services.jellyfin.loadbalancer.server.port=8096"
restart: unless-stopped
networks:
- proxy
networks:
proxy:
external: true