media-stack/docker-compose.yml
2023-08-12 11:51:26 +05:30

177 lines
5.2 KiB
YAML

version: "3.9"
name: media-stack
services:
vpn:
## Read https://github.com/qdm12/gluetun/wiki for details on configuring VPN for different service providers.
profiles: ["vpn"]
container_name: vpn
image: qmcgaw/gluetun:v3.35.0
cap_add:
- NET_ADMIN
environment:
- VPN_SERVICE_PROVIDER=${VPN_SERVICE_PROVIDER:-nordvpn} # Valid values: nordvpn, expressvpn, protonvpn, surfshark or custom
- OPENVPN_USER=${OPENVPN_USER:-""}
- OPENVPN_PASSWORD=${OPENVPN_PASSWORD:-""}
## For list of server regions and countries, visit https://raw.githubusercontent.com/qdm12/gluetun/master/internal/storage/servers.json
- SERVER_COUNTRIES=${SERVER_COUNTRIES:-Switzerland}
# - FREE_ONLY=on # Valid with protonvpn only. on if using free service provided by protonvpn
## Enable below if VPN_SERVICE_PROVIDER=custom
# - VPN_TYPE=openvpn # or wireguard.
## If VPN_TYPE is openvpn
# - OPENVPN_CUSTOM_CONFIG=/gluetun/custom.conf
## If VPN_TYPE is wireguard. Replace below env variables as required.
# - VPN_ENDPOINT_IP=1.2.3.4 # Replace with your wg endpoint ip or domain
# - VPN_ENDPOINT_PORT=51820 # Replace with wg server port
# - WIREGUARD_PUBLIC_KEY=wAUaJMhAq3NFutLHIdF8AN0B5WG8RndfQKLPTEDHal0= # Replace with your wg public key
# - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU= # Replace with your wg client private key
# - WIREGUARD_PRESHARED_KEY=xOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU= # Replaced with your wg pre-shared key
# - WIREGUARD_ADDRESSES="10.64.222.21/32" # Replace with wg address
## Enable volume if custom VPN_SERVICE_PROVIDER is used
# volumes:
# - /yourpath/yourconfig.conf:/gluetun/config.conf:ro
networks:
- mynetwork
ports:
# qbittorrent ports
- 5080:5080
- 6881:6881
- 6881:6881/udp
# prowlarr ports
- 9696:9696
restart: "unless-stopped"
## Default credentials - Username: admin password: adminadmin ##
## Change password after install from UI --> Tools --> Options --> WebUI ##
qbittorrent:
container_name: qbittorrent
image: lscr.io/linuxserver/qbittorrent:4.5.4
# Comment this if vpn is disabled
depends_on: # Comment this line if vpn is disabled
- vpn # Comment this line if vpn is disabled
# networks: # Uncomment this line if vpn is disabled
# - mynetwork # Uncomment this line if vpn is disabled
network_mode: service:vpn # Comment this line if vpn is disabled
environment:
- PUID=1000
- PGID=1000
- TZ=UTC
- WEBUI_PORT=5080
volumes:
- qbittorrent-config:/config
- torrent-downloads:/downloads
## Uncomment below ports if VPN is disabled.
# ports:
# - 5080:5080
# - 6881:6881
# - 6881:6881/udp
restart: "unless-stopped"
radarr:
container_name: radarr
image: lscr.io/linuxserver/radarr:4.6.4
networks:
- mynetwork
environment:
- PUID=1000
- PGID=1000
- TZ=UTC
ports:
- 7878:7878
volumes:
- radarr-config:/config
- torrent-downloads:/downloads
restart: "unless-stopped"
sonarr:
image: linuxserver/sonarr:4.0.0-develop
container_name: sonarr
networks:
- mynetwork
environment:
- PUID=1000
- PGID=1000
- TZ=UTC
volumes:
- sonarr-config:/config
- torrent-downloads:/downloads
ports:
- 8989:8989
restart: unless-stopped
prowlarr:
container_name: prowlarr
image: linuxserver/prowlarr:1.6.3
# Comment this if vpn is disabled
depends_on: # Comment this line if vpn is disabled
- vpn # Comment this line if vpn is disabled
network_mode: service:vpn # Comment this line if vpn is disabled
# networks: # Uncomment this line if vpn is disabled
# - mynetwork # Uncomment this line if vpn is disabled
environment:
- PUID=1000
- PGID=1000
- TZ=UTC
volumes:
- prowlarr-config:/config
## Uncomment below ports if VPN is disabled.
# ports:
# - 9696:9696
restart: unless-stopped
jellyfin:
image: linuxserver/jellyfin:10.8.10
container_name: jellyfin
networks:
- mynetwork
environment:
- PUID=1000
- PGID=1000
- TZ=UTC
volumes:
- jellyfin-config:/config
- torrent-downloads:/data
# devices:
# - /dev/videoN:/dev/videoN # Mount GPU device
ports:
- 8096:8096
- 7359:7359/udp
- 8920:8920
restart: unless-stopped
# cleanmyarr:
# depends_on:
# - radarr
# - sonarr
# image: linuxshots/cleanmyarr:0.4.1-beta
# container_name: cleanmyarr
# networks:
# - mynetwork
# volumes:
# - cleanmyarr-config:/config
# restart: unless-stopped
volumes:
torrent-downloads:
radarr-config:
sonarr-config:
jackett-config:
jackett-blackhole:
prowlarr-config:
jellyfin-config:
qbittorrent-config:
tx-config:
tx-watch:
# cleanmyarr-config:
networks:
mynetwork:
external: true