Update docker-compose.yml

This commit is contained in:
hotstovejer 2026-03-10 13:44:03 -05:00
parent cb69414d92
commit 236d2e179c

View File

@ -1,52 +1,62 @@
--- # Compose file for the *arr stack. Configuration files are stored in the
# directory you launch the compose file on. Change to bind mounts if needed.
# All containers are ran with user and group ids of the main user and
# group to aviod permissions issues of downloaded files, please refer
# the read me file for more information.
#############################################################################
# NOTICE: We recently switched to using a .env file. PLEASE refer to the docs.
# https://github.com/TechHutTV/homelab/tree/main/media#docker-compose-and-env
#############################################################################
networks: networks:
servarrnetwork: servarrnetwork:
name: servarrnetwork name: servarrnetwork
ipam: ipam:
config: config:
- subnet: 172.39.0.0/24 - subnet: 172.39.0.0/24
services: services:
# airvpn recommended (referral url: https://airvpn.org/?referred_by=673908)
gluetun: gluetun:
image: qmcgaw/gluetun image: qmcgaw/gluetun
container_name: gluetun container_name: gluetun
cap_add: cap_add:
- NET_ADMIN - NET_ADMIN
devices: devices:
- /dev/net/tun:/dev/net/tun - /dev/net/tun:/dev/net/tun # If running on an LXC see readme for more info.
networks: networks:
servarrnetwork: servarrnetwork:
ipv4_address: 172.39.0.2 ipv4_address: 172.39.0.2
ports: ports:
- 6881:6881 - 8080:8080 # qbittorrent web interface
- 6881:6881/udp - 6881:6881 # qbittorrent torrent port
- 8085:8085 - 6789:6789 # nzbget
- 6881:6881 - 9696:9696 # prowlarr
- 6789:6789
- 9696:9696
volumes: volumes:
- ./gluetun:/gluetun - ./gluetun:/gluetun
# Make a '.env' file in the same directory.
env_file:
- .env
healthcheck: healthcheck:
test: ping -c 1 www.google.com || exit 1 test: ping -c 1 www.google.com || exit 1
interval: 20s interval: 20s
timeout: 10s timeout: 10s
retries: 5 retries: 5
environment: restart: unless-stopped
- VPN_SERVICE_PROVIDER=private internet access
- OPENVPN_USER=p5492873
- OPENVPN_PASSWORD=5goiaAsYEg
- SERVER_REGIONS=Lithuania
- TZ=America/Chicago
- UPDATER_PERIOD=24h
restart: always
qbittorrent: qbittorrent:
image: lscr.io/linuxserver/qbittorrent image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent container_name: qbittorrent
network_mode: service:gluetun restart: unless-stopped
labels:
- deunhealth.restart.on.unhealthy=true
environment: environment:
- PUID=1000 - PUID=${PUID}
- PGID=1000 - PGID=${PGID}
- TZ=America/Chicago - TZ=${TZ}
- WEBUI_PORT=8085 - WEBUI_PORT=8080 # must match "qbittorrent web interface" port number in gluetun's service above
- TORRENTING_PORT=${FIREWALL_VPN_INPUT_PORTS} # airvpn forwarded port, pulled from .env
volumes: volumes:
- ./qbittorrent:/config - ./qbittorrent:/config
- /data:/data - /data:/data
@ -54,31 +64,34 @@ services:
gluetun: gluetun:
condition: service_healthy condition: service_healthy
restart: true restart: true
restart: unless-stopped network_mode: service:gluetun
healthcheck: healthcheck:
test: ping -c 1 www.google.com || exit 1 test: ping -c 1 www.google.com || exit 1
interval: 60s interval: 60s
retries: 3 retries: 3
start_period: 20s start_period: 20s
timeout: 10s timeout: 10s
# See the 'qBittorrent Stalls with VPN Timeout' section for more information.
deunhealth: deunhealth:
image: qmcgaw/deunhealth image: qmcgaw/deunhealth
container_name: deunhealth container_name: deunhealth
network_mode: none network_mode: "none"
environment: environment:
- LOG_LEVEL=info - LOG_LEVEL=info
- HEALTH_SERVER_ADDRESS=127.0.0.1:9999 - HEALTH_SERVER_ADDRESS=127.0.0.1:9999
- TZ=America/Chicago - TZ=${TZ}
restart: always restart: always
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
nzbget: nzbget:
image: lscr.io/linuxserver/nzbget:latest image: lscr.io/linuxserver/nzbget:latest
container_name: nzbget container_name: nzbget
environment: environment:
- PUID=1000 - PUID=${PUID}
- PGID=1000 - PGID=${PGID}
- TZ=America/Chicago - TZ=${TZ}
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- ./nzbget:/config - ./nzbget:/config
@ -89,13 +102,14 @@ services:
restart: true restart: true
restart: unless-stopped restart: unless-stopped
network_mode: service:gluetun network_mode: service:gluetun
prowlarr: prowlarr:
image: lscr.io/linuxserver/prowlarr:latest image: lscr.io/linuxserver/prowlarr:latest
container_name: prowlarr container_name: prowlarr
environment: environment:
- PUID=1000 - PUID=${PUID}
- PGID=1000 - PGID=${PGID}
- TZ=America/Chicago - TZ=${TZ}
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- ./prowlarr:/config - ./prowlarr:/config
@ -105,47 +119,33 @@ services:
condition: service_healthy condition: service_healthy
restart: true restart: true
network_mode: service:gluetun network_mode: service:gluetun
sonarr: sonarr:
image: lscr.io/linuxserver/sonarr:latest image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr container_name: sonarr
restart: unless-stopped
environment: environment:
- PUID=1000 - PUID=${PUID}
- PGID=1000 - PGID=${PGID}
- TZ=America/Chicago - TZ=${TZ}
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- ./sonarr:/config - ./sonarr:/config
- /data:/data - /data:/data
restart: unless-stopped
ports: ports:
- 8989:8989 - 8989:8989
networks: networks:
servarrnetwork: servarrnetwork:
ipv4_address: 172.39.0.3 ipv4_address: 172.39.0.3
lidarr:
image: lscr.io/linuxserver/lidarr:latest
container_name: lidarr
environment:
- PUID=1000
- PGID=1000
- TZ=America/Chicago
volumes:
- /etc/localtime:/etc/localtime:ro
- ./lidarr:/config
- /data:/data
ports:
- 8686:8686
networks:
servarrnetwork:
ipv4_address: 172.39.0.5
restart: unless-stopped
radarr: radarr:
image: lscr.io/linuxserver/radarr:latest image: lscr.io/linuxserver/radarr:latest
container_name: radarr container_name: radarr
restart: unless-stopped
environment: environment:
- PUID=1000 - PUID=${PUID}
- PGID=1000 - PGID=${PGID}
- TZ=America/Chicago - TZ=${TZ}
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- ./radarr:/config - ./radarr:/config
@ -155,15 +155,33 @@ services:
networks: networks:
servarrnetwork: servarrnetwork:
ipv4_address: 172.39.0.4 ipv4_address: 172.39.0.4
lidarr:
container_name: lidarr
image: lscr.io/linuxserver/lidarr:latest
restart: unless-stopped restart: unless-stopped
volumes:
- /etc/localtime:/etc/localtime:ro
- ./lidarr:/config
- /data:/data
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
ports:
- 8686:8686
networks:
servarrnetwork:
ipv4_address: 172.39.0.5
bazarr: bazarr:
image: lscr.io/linuxserver/bazarr:latest image: lscr.io/linuxserver/bazarr:latest
container_name: bazarr container_name: bazarr
restart: unless-stopped restart: unless-stopped
environment: environment:
- PUID=1000 - PUID=${PUID}
- PGID=1000 - PGID=${PGID}
- TZ=America/Chicago - TZ=${TZ}
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- ./bazarr:/config - ./bazarr:/config
@ -173,33 +191,27 @@ services:
networks: networks:
servarrnetwork: servarrnetwork:
ipv4_address: 172.39.0.6 ipv4_address: 172.39.0.6
ytdl-sub:
image: ghcr.io/jmbannon/ytdl-sub:latest seerr:
container_name: ytdl-sub container_name: seerr
image: ghcr.io/seerr-team/seerr:latest
environment: environment:
- PUID=1000 - LOG_LEVEL=debug
- PGID=1000 - PUID=${PUID}
- TZ=America/Chicago - PGID=${PGID}
- DOCKER_MODS=linuxserver/mods:universal-cron - TZ=${TZ}
volumes: healthcheck:
- ./ytdl-sub:/config test: wget --no-verbose --tries=1 --spider http://localhost:5055/api/v1/status || exit 1
- /data/youtube:/youtube start_period: 20s
networks: timeout: 3s
servarrnetwork: interval: 15s
ipv4_address: 172.39.0.8 retries: 3
restart: unless-stopped restart: unless-stopped
jellyseerr:
container_name: jellyseerr
image: fallenbagel/jellyseerr:latest
environment:
- PUID=1000
- PGID=1000
- TZ=America/Chicago
volumes: volumes:
- ./jellyseerr:/app/config - ./seerr:/app/config
ports: ports:
- 5055:5055 - 5055:5055
networks: networks:
servarrnetwork: servarrnetwork:
ipv4_address: 172.39.0.9 ipv4_address: 172.39.0.7
restart: unless-stopped