diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..1f630a1 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,98 @@ +version: "3.1" + +services: + # VPN outward tunnel, to avoid downloading through the local network + # Thus has all exposed ports for different services, to avoid any leak + wireguard_torr: + image: ghcr.io/linuxserver/wireguard + container_name: wireguard + cap_add: + - NET_ADMIN + - SYS_MODULE + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Copenhagen + volumes: + - ./wireguard-config:/config + - /lib/modules:/lib/modules + ports: + - 51821:51820/udp # Wireguard + - 7878:7878 # Radarr + - 8989:8989 # Sonarr + - 9117:9117 # Jacket + - 8112:8112 # Deluge + sysctls: + - net.ipv4.conf.all.src_valid_mark=1 + - net.ipv6.conf.all.disable_ipv6=0 + restart: unless-stopped + + # Search for movies + radarr: + image: ghcr.io/linuxserver/radarr + container_name: radarr + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Copenhagen + volumes: + - /media/alpha/torrent-stack/radarr/config:/config + - /media/alpha/jellyfin/movies:/movies + - /media/alpha/torrent-stack/downloads:/downloads + - /media/alpha/torrent-stack/radarr/sma:/usr/local/sma/config + restart: unless-stopped + network_mode: service:wireguard_torr + depends_on: + - wireguard_torr + + # Search for TV shows/animes + sonarr: + image: ghcr.io/linuxserver/sonarr + container_name: sonarr + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Copenhagen + volumes: + - /media/alpha/torrent-stack/sonarr/config:/config + - /media/alpha/jellyfin/tvshows:/tv + - /media/alpha/torrent-stack/downloads:/downloads + - /media/alpha/torrent-stack/sonarr/sma:/usr/local/sma/config + restart: unless-stopped + network_mode: service:wireguard_torr + depends_on: + - wireguard_torr + + # Torrent aggregator to query through multiple torrent sources when searching with Sonarr + # and Radarr + jackett: + image: ghcr.io/linuxserver/jackett + container_name: jackett + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Copenhagen + volumes: + - /media/alpha/torrent-stack/jackett/config:/config + - /media/alpha/torrent-stack/downloads:/downloads + restart: unless-stopped + network_mode: service:wireguard_torr + depends_on: + - wireguard_torr + + deluge: + image: ghcr.io/linuxserver/deluge + container_name: deluge + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Copenhagen + - DELUGE_LOGLEVEL=error + volumes: + - /media/alpha/torrent-stack/deluge/config:/config + - /media/alpha/torrent-stack/downloads:/downloads + restart: unless-stopped + network_mode: service:wireguard_torr + depends_on: + - wireguard_torr +