273 lines
6.7 KiB
YAML
273 lines
6.7 KiB
YAML
services:
|
|
|
|
### START DOWNLOAD
|
|
vpn:
|
|
container_name: vpn
|
|
profiles:
|
|
- download
|
|
image: qmcgaw/gluetun:v3.40
|
|
cap_add:
|
|
- NET_ADMIN # Quin does not like these
|
|
devices:
|
|
- /dev/net/tun:/dev/net/tun
|
|
volumes:
|
|
- ${PATH_ETC}/gluetun:/gluetun
|
|
environment:
|
|
- VPN_SERVICE_PROVIDER=private internet access
|
|
- SERVER_REGIONS=Netherlands
|
|
- OPENVPN_USER=${PIA_USERNAME}
|
|
- OPENVPN_PASSWORD=${PIA_PASSWORD}
|
|
- UPDATER_PERIOD=24h
|
|
ports:
|
|
- 9091:9091 # Transmission
|
|
- 51413:51413 # Transmission
|
|
- 51413:51413/udp # Transmission
|
|
- 9696:9696 # Prowlarr
|
|
- 7878:7878 # Radarr
|
|
- 8989:8989 # Sonarr
|
|
- 8686:8686 # Lidarr
|
|
- 3333:3333 # bitmagnet API and WebUI port
|
|
- 3334:3334/tcp # bitmagnet BitTorrent ports
|
|
- 3334:3334/udp # bitmagnet BitTorrent ports
|
|
# - 5055:5055 # seerr
|
|
# - 8112:8112 # Deluge
|
|
# - 6881:6881 # Deluge
|
|
# - 6881:6881/udp # Deluge
|
|
# - 58846:58846 # idk Deluge
|
|
- 7474:7474 # Autobrr
|
|
restart: unless-stopped
|
|
|
|
transmission:
|
|
container_name: transmission
|
|
profiles:
|
|
- download
|
|
image: lscr.io/linuxserver/transmission:latest
|
|
network_mode: "service:vpn"
|
|
environment:
|
|
- TZ=${TZ}
|
|
- PUID=1000
|
|
- PGID=1000
|
|
volumes:
|
|
- ${PATH_ETC}/transmission:/config
|
|
- /storage/transmission/downloads:/downloads
|
|
restart: unless-stopped
|
|
|
|
prowlarr:
|
|
container_name: prowlarr
|
|
profiles:
|
|
- download
|
|
image: lscr.io/linuxserver/prowlarr:latest
|
|
network_mode: "service:vpn"
|
|
environment:
|
|
- TZ=${TZ}
|
|
- PUID=1000
|
|
- PGID=1000
|
|
volumes:
|
|
- ${PATH_ETC}/prowlarr:/config
|
|
depends_on:
|
|
vpn:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
restart: unless-stopped
|
|
|
|
radarr:
|
|
container_name: radarr
|
|
profiles:
|
|
- download
|
|
image: lscr.io/linuxserver/radarr:latest
|
|
network_mode: "service:vpn"
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- ${PATH_ETC}/radarr:/config
|
|
- /storage/media:/media # Access to media library
|
|
- /storage/transmission/downloads:/downloads # Access to transmission downloads
|
|
depends_on:
|
|
vpn:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
prowlarr:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
restart: unless-stopped
|
|
|
|
sonarr:
|
|
container_name: sonarr
|
|
profiles:
|
|
- download
|
|
image: lscr.io/linuxserver/sonarr:latest
|
|
network_mode: "service:vpn"
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- ${PATH_ETC}/sonarr:/config
|
|
- /storage/media:/media # Access to media library
|
|
- /storage/transmission/downloads:/downloads # Access to transmission downloads
|
|
depends_on:
|
|
vpn:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
prowlarr:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
restart: unless-stopped
|
|
|
|
lidarr:
|
|
container_name: lidarr
|
|
profiles:
|
|
- download
|
|
image: lscr.io/linuxserver/lidarr:latest
|
|
network_mode: "service:vpn"
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- ${PATH_ETC}/lidarr:/config
|
|
- /storage/media:/media # Access to media library
|
|
- /storage/transmission/downloads:/downloads # Access to transmission downloads
|
|
depends_on:
|
|
vpn:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
prowlarr:
|
|
condition: service_started
|
|
restart: true
|
|
required: true
|
|
restart: unless-stopped
|
|
|
|
bitmagnet:
|
|
container_name: bitmagnet
|
|
profiles:
|
|
- download
|
|
image: ghcr.io/bitmagnet-io/bitmagnet:latest
|
|
restart: unless-stopped
|
|
network_mode: "service:vpn"
|
|
environment:
|
|
- POSTGRES_PASSWORD=${BITMAGENT_DB_PASS}
|
|
- TMDB_API_KEY=${TMDB_API_KEY}
|
|
volumes:
|
|
- ${PATH_ETC}/bitmagnet:/root/.config/bitmagnet
|
|
command:
|
|
- worker
|
|
- run
|
|
- --keys=http_server
|
|
- --keys=queue_server
|
|
# disable the next line to run without DHT crawler
|
|
- --keys=dht_crawler
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
|
|
postgres:
|
|
container_name: bitmagnet-postgres
|
|
profiles:
|
|
- download
|
|
image: postgres:16-alpine
|
|
network_mode: "service:vpn"
|
|
volumes:
|
|
- ${PATH_ETC}/bitmagnet-postgres:/var/lib/postgresql/data
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_PASSWORD=${BITMAGENT_DB_PASS}
|
|
- POSTGRES_DB=bitmagnet
|
|
- PGUSER=postgres
|
|
shm_size: 1g
|
|
healthcheck:
|
|
test:
|
|
- CMD-SHELL
|
|
- pg_isready
|
|
start_period: 20s
|
|
interval: 10s
|
|
|
|
seerr:
|
|
container_name: seerr
|
|
profiles:
|
|
- download
|
|
image: ghcr.io/seerr-team/seerr:latest
|
|
init: true
|
|
restart: unless-stopped
|
|
ports:
|
|
- 5055:5055
|
|
environment:
|
|
- TZ=${TZ}
|
|
- LOG_LEVEL=debug
|
|
volumes:
|
|
- ${PATH_ETC}/seer:/app/config
|
|
healthcheck:
|
|
test: wget --no-verbose --tries=1 --spider http://localhost:5055/api/v1/status || exit 1
|
|
start_period: 20s
|
|
timeout: 3s
|
|
interval: 15s
|
|
retries: 3
|
|
|
|
lidatube:
|
|
container_name: lidatube
|
|
profiles:
|
|
- download
|
|
image: thewicklowwolf/lidatube:latest
|
|
volumes:
|
|
- ${PATH_ETC}/lidatube:/lidatube/config
|
|
- /storage/lidatube:/lidatube/downloads
|
|
- /etc/localtime:/etc/localtime:ro
|
|
environment:
|
|
- attempt_lidarr_import=True
|
|
ports:
|
|
- 5000:5000
|
|
restart: unless-stopped
|
|
|
|
aurral:
|
|
container_name: aurral
|
|
profiles:
|
|
- download
|
|
image: ghcr.io/lklynet/aurral:latest
|
|
restart: unless-stopped
|
|
ports:
|
|
- 3001:3001
|
|
environment:
|
|
- DOWNLOAD_FOLDER=${DL_FOLDER:-./data/downloads}
|
|
volumes:
|
|
- ${PATH_ETC}/aurral:/app/backend/data
|
|
- /storage/aurral:/app/downloads
|
|
|
|
### END DOWNLOAD
|
|
|
|
### START APP
|
|
navidrome:
|
|
profiles:
|
|
- app
|
|
container_name: navidrome
|
|
image: deluan/navidrome:latest
|
|
user: 1000:1000
|
|
ports:
|
|
- "4533:4533"
|
|
volumes:
|
|
- ${PATH_ETC}/navidrome:/data
|
|
- /storage/media/Music:/music
|
|
restart: unless-stopped
|
|
|
|
metube:
|
|
profiles:
|
|
- app
|
|
image: ghcr.io/alexta69/metube
|
|
container_name: metube
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8081:8081"
|
|
volumes:
|
|
- ./bin/metube-options.json:/config/metube-options.json # Use config from repo :)
|
|
- /storage/metube/downloads:/downloads
|
|
environment:
|
|
- YTDL_OPTIONS_FILE=/config/metube-options.json
|
|
|
|
### END APP |