First commit
This commit is contained in:
@@ -0,0 +1,167 @@
|
||||
# THE MAGNUM OPUS OF TORRENTING
|
||||
|
||||
services:
|
||||
gluetun:
|
||||
image: qmcgaw/gluetun
|
||||
container_name: gluetun
|
||||
# Hostname to use for container, required in some instances for the rest of the stack to each other endpoints
|
||||
hostname: gluetun
|
||||
# line above must be uncommented to allow external containers to connect.
|
||||
# See https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md#external-container-to-gluetun
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
devices:
|
||||
- /dev/net/tun:/dev/net/tun
|
||||
ports:
|
||||
- 6881:6881
|
||||
- 6881:6881/udp
|
||||
- 8085:8085 # qbittorrent Downloads torrents and sorts them by categories
|
||||
- 9696:9696 # Prowlarr Torrent indexer (searches pirate bay and other sites for torrent files)
|
||||
- 8191:8191 # Flare-solverr Cloudflare bypass for Prowlarr (I couldnt get it to work)
|
||||
- 5055:5055 # Seerr Movie and show discovery/queueing
|
||||
- 8989:8989 # Sonarr shows
|
||||
- 7878:7878 # Radarr movies
|
||||
- 8686:8686 # Lidarr Music
|
||||
- 5030:5030 # slskd Music
|
||||
- 5031:5031 # slskd Music
|
||||
- 50300:50300 # slskd Music
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/gluetun:/gluetun
|
||||
env_file:
|
||||
.env
|
||||
environment:
|
||||
# See https://github.com/qdm12/gluetun-wiki/tree/main/setup#setup
|
||||
- VPN_SERVICE_PROVIDER=mullvad
|
||||
- VPN_TYPE=wireguard
|
||||
# Wireguard:
|
||||
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY} # See https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/nordvpn.md#obtain-your-wireguard-private-key
|
||||
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}
|
||||
|
||||
# TORRENT CLIENT
|
||||
qbittorrent:
|
||||
image: lscr.io/linuxserver/qbittorrent
|
||||
container_name: qbittorrent
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
environment:
|
||||
- WEBUI_PORT=8085
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/qbittorrent:/config
|
||||
- ${TORRENT_DOWNLOAD_DIR}:/downloads
|
||||
- ${TORRENT_SEEDING_DIR}:/seeding
|
||||
# - ${RSTACK_DATA_DIR}/torrent_files:/torrent_files
|
||||
depends_on:
|
||||
- gluetun
|
||||
restart: always
|
||||
|
||||
# TORRENT INDEXER
|
||||
prowlarr:
|
||||
image: lscr.io/linuxserver/prowlarr:latest
|
||||
container_name: prowlarr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/prowlarr/data:/config
|
||||
restart: unless-stopped
|
||||
|
||||
# CLOUDFLARE BYPASS
|
||||
flaresolverr:
|
||||
image: ghcr.io/flaresolverr/flaresolverr:latest
|
||||
container_name: flaresolverr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
environment:
|
||||
- CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none}
|
||||
restart: unless-stopped
|
||||
|
||||
# MOVIES AND SHOW DISCOVERY
|
||||
seerr:
|
||||
image: ghcr.io/seerr-team/seerr:latest
|
||||
container_name: seerr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
environment:
|
||||
- LOG_LEVEL=debug
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/jellyseer/config:/app/config
|
||||
healthcheck:
|
||||
test: wget --no-verbose --tries=1 --spider http://localhost:5055/api/v1/settings/public || exit 1
|
||||
start_period: 20s
|
||||
timeout: 3s
|
||||
interval: 15s
|
||||
retries: 3
|
||||
restart: unless-stopped
|
||||
|
||||
# SHOWS
|
||||
sonarr:
|
||||
image: lscr.io/linuxserver/sonarr:latest
|
||||
container_name: sonarr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/sonarr/data:/config
|
||||
- ${TORRENT_DOWNLOAD_DIR}:/downloads
|
||||
- ${TORRENT_SEEDING_DIR}:/seeding
|
||||
restart: unless-stopped
|
||||
|
||||
# MOVIES
|
||||
radarr:
|
||||
image: lscr.io/linuxserver/radarr:latest
|
||||
container_name: radarr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/radarr/data:/config
|
||||
- ${TORRENT_DOWNLOAD_DIR}:/downloads
|
||||
- ${TORRENT_SEEDING_DIR}:/seeding
|
||||
restart: unless-stopped
|
||||
|
||||
|
||||
## Music stack (pain in the ass)
|
||||
lidarr:
|
||||
image: lscr.io/linuxserver/lidarr:latest
|
||||
container_name: lidarr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/lidarr/data:/config
|
||||
- ${TORRENT_DOWNLOAD_DIR}:/downloads
|
||||
- ${TORRENT_SEEDING_DIR}:/seeding
|
||||
restart: unless-stopped
|
||||
|
||||
# Soulseek, a P2P file sharing service that is mostly used for music sharing
|
||||
slskd:
|
||||
image: slskd/slskd
|
||||
container_name: slskd
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
environment:
|
||||
- SLSKD_REMOTE_CONFIGURATION=true
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/slskd/data:/app
|
||||
- ${TORRENT_DOWNLOAD_DIR}/lidarr-slskd:/app/downloads
|
||||
- ${TORRENT_DOWNLOAD_DIR}/lidarr-slskd:/downloaded
|
||||
#- ${TORRENT_DOWNLOAD_DIR}/lidarr-slskd-shared:/shared # (optional: If you wanna let other people on the slsk network download from you)
|
||||
restart: unless-stopped
|
||||
|
||||
# Sends requested albums to slskd to be downloaded (since normal lidarr sucks)
|
||||
soularr:
|
||||
image: mrusse08/soularr:latest
|
||||
container_name: soularr
|
||||
network_mode: "service:gluetun"
|
||||
env_file:
|
||||
.env
|
||||
environment:
|
||||
- SCRIPT_INTERVAL=300
|
||||
volumes:
|
||||
- ${RSTACK_DATA_DIR}/soularr:/data
|
||||
- ${TORRENT_DOWNLOAD_DIR}/lidarr-slskd:/downloads
|
||||
restart: unless-stopped
|
||||
Reference in New Issue
Block a user