119 lines
3.1 KiB
YAML
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
|