Skip to main content

*arr Mega Stack

version: "3.7"

services:
  radarr:
    container_name: radarr
    hostname: Radarr
    image: cr.hotio.dev/ghcr.io/hotio/radarr
    ports:
      - "7878:7878"
    environment:
      - PUID=998
      - PGID=100
      - UMASK=002
      - TZ=Europe/Paris
    volumes:
      - /srv/path/Files/Radarr/config:/config
      - /mnt/OrbiterVideo/movies:/movies
      - /mnt/OrbiterVideo/EnfantsFilms:/moviesKids
      - /srv/path/Files/QBittorrentVPN/downloads:/downloads
    restart: unless-stopped
    networks:
      - arr

  sonarr:
    container_name: sonarr
    hostname: Sonarr
    image: cr.hotio.dev/ghcr.io/hotio/sonarr
    ports:
      - "8989:8989"
    environment:
      - PUID=998
      - PGID=100
      - UMASK=002
      - TZ=Europe/Paris
    volumes:
      - /srv/path/Files/Sonarr/config:/config
      - /mnt/OrbiterVideo/tvshows/:/tvshows
      - /mnt/OrbiterVideo/EnfantsSeries:/tvshowsKids
      - /srv/path/Files/QBittorrentVPN/downloads:/downloads
    restart: unless-stopped
    networks:
      - arr

  qbittorrent:
    container_name: qbittorrentvpn
    image: cr.hotio.dev/ghcr.io/hotio/qbittorrent
    ports:
      - 8992:8992
      - 8118:8118
    environment:
      - WEBUI_PORTS=8992/tcp,8992/udp
      - PUID=998
      - PGID=100
      - UMASK=0022
      - TZ=Europe/Paris
      - VPN_ENABLED=true
      - VPN_LAN_NETWORK=192.168.1.0/24
      - VPN_CONF=wg0
      - VPN_IP_CHECK_DELAY=5
      - PRIVOXY_ENABLED=false
      - DEBUG=yes
    volumes:
      - /srv/path/Files/QBittorrentVPN:/config
      - /srv/path/Files/QBittorrentVPN/downloads:/downloads
      - /srv/path/Files/QBittorrentVPN/skins:/skins
    cap_add:
      - NET_ADMIN
    sysctls:
      - net.ipv4.conf.all.src_valid_mark=1
      - net.ipv6.conf.all.disable_ipv6=1
    restart: unless-stopped
    networks:
      - arr

  bazarr:
    container_name: bazarr
    hostname: Bazarr
    image: cr.hotio.dev/ghcr.io/hotio/bazarr
    ports:
      - "6767:6767"
    environment:
      - PUID=998
      - PGID=100
      - UMASK=002
      - TZ=Europe/Paris
    volumes:
      - /srv/path/Files/Bazarr/config:/config
      - /mnt/OrbiterVideo/tvshows/:/tvshows
      - /mnt/OrbiterVideo/movies:/movies
      - /mnt/OrbiterVideo/EnfantsSeries/:/tvshowsKids
      - /mnt/OrbiterVideo/EnfantsFilms/:/moviesKids
    restart: unless-stopped
    networks:
      - arr

  jackett:
    image: lscr.io/linuxserver/jackett
    container_name: jackett
    environment:
      - PUID=998
      - PGID=100
      - TZ=Europe/Paris
      - AUTO_UPDATE=true
    volumes:
      - /srv/path/Files/Jackett/config:/config
      - /srv/path/Files/Jackett/downloads:/downloads
    ports:
      - 9117:9117
    restart: unless-stopped
    networks:
      - arr

  prowlarr:
    image: lscr.io/linuxserver/prowlarr:develop
    container_name: prowlarr
    environment:
      - PUID=998
      - PGID=100
      - TZ=Europe/Paris
    volumes:
      - /srv/path/Files/Prowlarr/config:/config
    ports:
      - 9696:9696
    restart: unless-stopped
    networks:
      - arr

  jellyseerr:
    image: fallenbagel/jellyseerr:latest
    container_name: jellyseerr
    environment:
      - LOG_LEVEL=debug
      - TZ=Europe/Paris
    ports:
      - 5055:5055
    volumes:
      - /srv/path/Files/Jellyseerr/config:/app/config
    restart: unless-stopped
    networks:
      - arr

  reiverr:
    image: ghcr.io/aleksilassila/reiverr:latest
    container_name: reiverr
    ports:
      - 9494:9494
    volumes:
      - /srv/path/Files/Reiverr/config:/config
    restart: unless-stopped
    networks:
      - arr

  flaresolverr:
    # DockerHub mirror flaresolverr/flaresolverr:latest
    image: ghcr.io/flaresolverr/flaresolverr:latest
    container_name: flaresolverr
    environment:
      - LOG_LEVEL=debug
      - LOG_HTML=false
      - CAPTCHA_SOLVER=none
      - LANG=en_US #important for yggtorrent for example. Don't change
      - TZ=Europe/Paris
      - LANG=en_EN
    ports:
      - "8191:8191"
    restart: unless-stopped
    networks:
      - arr

networks:
  arr:
    driver: bridge