Files
homelab-configs/jellyfin/arr-stack/docker-compose.yml
T

105 lines
3.4 KiB
YAML

services:
radarr:
container_name: radarr
image: lscr.io/linuxserver/radarr:latest
restart: unless-stopped
ports:
- "7878:7878"
environment:
- PUID=1000
- PGID=1000
- TZ=America/Chicago
volumes:
- /srv/docker/radarr/config:/config
- /mnt/media:/data
sonarr:
container_name: sonarr
image: lscr.io/linuxserver/sonarr:latest
restart: unless-stopped
ports:
- "8989:8989"
environment:
- PUID=1000
- PGID=1000
- TZ=America/Chicago
volumes:
- /srv/docker/sonarr/config:/config
- /mnt/media:/data
prowlarr:
container_name: prowlarr
image: lscr.io/linuxserver/prowlarr:latest
restart: unless-stopped
ports:
- "9696:9696"
environment:
- PUID=1000
- PGID=1000
- TZ=America/Chicago
volumes:
- /srv/docker/prowlarr/config:/config
labels:
- "com.centurylinklabs.watchtower.scope=prowlarr"
flaresolverr:
container_name: flaresolverr
image: ghcr.io/flaresolverr/flaresolverr:latest
restart: unless-stopped
ports:
- "8191:8191"
environment:
- TZ=America/Chicago
watchtower:
image: containrrr/watchtower
container_name: watchtower
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/jgitta/.docker/config.json:/config.json:ro
environment:
- TZ=America/Chicago
- WATCHTOWER_NOTIFICATIONS=email
- WATCHTOWER_NOTIFICATION_EMAIL_FROM=jgitta@jgitta.com
- WATCHTOWER_NOTIFICATION_EMAIL_TO=jgitta@jgitta.com
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.fastmail.com
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=jgitta@jgitta.com
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=2l79229z6r4y8x8y
- WATCHTOWER_NOTIFICATIONS_LEVEL=info
- WATCHTOWER_CLEANUP=true
- WATCHTOWER_SCHEDULE=0 0 4 * * *
- WATCHTOWER_ROLLING_RESTART=true
- WATCHTOWER_ROLLING_RESTART_TIMEOUT=30s
- WATCHTOWER_HTTP_API_PERIODIC_POLLS=false
- WATCHTOWER_CONTAINER_WAIT_BEFORE_STOPPING=60s
# Separate scoped instance for prowlarr — staggered 5 min later to avoid
# concurrent lscr.io/ghcr.io rate limit bursts. Prowlarr must carry the
# com.centurylinklabs.watchtower.scope=prowlarr label (set above) so the
# main watchtower ignores it and only this instance manages it.
watchtower-prowlarr:
image: containrrr/watchtower
container_name: watchtower-prowlarr
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/jgitta/.docker/config.json:/config.json:ro
environment:
- TZ=America/Chicago
- WATCHTOWER_SCOPE=prowlarr
- WATCHTOWER_NOTIFICATIONS=email
- WATCHTOWER_NOTIFICATION_EMAIL_FROM=jgitta@jgitta.com
- WATCHTOWER_NOTIFICATION_EMAIL_TO=jgitta@jgitta.com
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.fastmail.com
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=jgitta@jgitta.com
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=2l79229z6r4y8x8y
- WATCHTOWER_NOTIFICATIONS_LEVEL=info
- WATCHTOWER_CLEANUP=true
- WATCHTOWER_SCHEDULE=0 5 4 * * *
- WATCHTOWER_ROLLING_RESTART=true
- WATCHTOWER_ROLLING_RESTART_TIMEOUT=30s
- WATCHTOWER_CONTAINER_WAIT_BEFORE_STOPPING=60s