mirror of
https://github.com/myronblair/kino-app
synced 2026-07-28 05:23:45 -05:00
Add *arr stack + qBittorrent (VPN'd via gluetun) + Portainer to compose
This commit is contained in:
@@ -44,6 +44,8 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
# Host media directory (movies, HLS, subtitles) — point at your NAS/ZFS mount
|
# Host media directory (movies, HLS, subtitles) — point at your NAS/ZFS mount
|
||||||
- ${MEDIA_ROOT_HOST:-./media}:/media
|
- ${MEDIA_ROOT_HOST:-./media}:/media
|
||||||
|
# Radarr/Sonarr report absolute file paths under this same path — must match exactly
|
||||||
|
- ${MEDIA_NAS_ROOT:-/mnt/nas/video}:/mnt/nas/video:ro
|
||||||
networks:
|
networks:
|
||||||
- streamhoard
|
- streamhoard
|
||||||
# No direct host port — frontend container reverse-proxies /api → backend:8001
|
# No direct host port — frontend container reverse-proxies /api → backend:8001
|
||||||
@@ -62,6 +64,105 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- streamhoard
|
- streamhoard
|
||||||
|
|
||||||
|
# ============ *arr stack + qBittorrent, all routed through gluetun (NordVPN) ============
|
||||||
|
gluetun:
|
||||||
|
image: qmcgaw/gluetun
|
||||||
|
container_name: streamhoard-gluetun
|
||||||
|
restart: unless-stopped
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
devices:
|
||||||
|
- /dev/net/tun:/dev/net/tun
|
||||||
|
environment:
|
||||||
|
VPN_SERVICE_PROVIDER: custom
|
||||||
|
VPN_TYPE: wireguard
|
||||||
|
WIREGUARD_ENDPOINT_IP: ${VPN_ENDPOINT_IP:?set VPN_ENDPOINT_IP in .env}
|
||||||
|
WIREGUARD_ENDPOINT_PORT: ${VPN_ENDPOINT_PORT:-51820}
|
||||||
|
WIREGUARD_PUBLIC_KEY: ${VPN_PUBLIC_KEY:?set VPN_PUBLIC_KEY in .env}
|
||||||
|
WIREGUARD_PRIVATE_KEY: ${VPN_PRIVATE_KEY:?set VPN_PRIVATE_KEY in .env}
|
||||||
|
WIREGUARD_ADDRESSES: ${VPN_ADDRESSES:-10.5.0.2/16}
|
||||||
|
FIREWALL_OUTBOUND_SUBNETS: 10.48.200.0/24
|
||||||
|
ports:
|
||||||
|
- "8082:8080" # qBittorrent WebUI
|
||||||
|
- "8989:8989" # Sonarr
|
||||||
|
- "7878:7878" # Radarr
|
||||||
|
- "9696:9696" # Prowlarr
|
||||||
|
networks:
|
||||||
|
- streamhoard
|
||||||
|
|
||||||
|
qbittorrent:
|
||||||
|
image: lscr.io/linuxserver/qbittorrent:latest
|
||||||
|
container_name: streamhoard-qbittorrent
|
||||||
|
restart: unless-stopped
|
||||||
|
network_mode: "service:gluetun"
|
||||||
|
depends_on:
|
||||||
|
- gluetun
|
||||||
|
environment:
|
||||||
|
PUID: 999
|
||||||
|
PGID: 988
|
||||||
|
TZ: ${TZ:-America/Chicago}
|
||||||
|
WEBUI_PORT: 8080
|
||||||
|
volumes:
|
||||||
|
- ${STACK_CONFIG_ROOT:-/opt/streamhoard-config}/qbittorrent/qBittorrent:/config/qBittorrent
|
||||||
|
- ${MEDIA_NAS_ROOT:-/mnt/nas/video}:/mnt/nas/video
|
||||||
|
|
||||||
|
radarr:
|
||||||
|
image: lscr.io/linuxserver/radarr:latest
|
||||||
|
container_name: streamhoard-radarr
|
||||||
|
restart: unless-stopped
|
||||||
|
network_mode: "service:gluetun"
|
||||||
|
depends_on:
|
||||||
|
- gluetun
|
||||||
|
environment:
|
||||||
|
PUID: 999
|
||||||
|
PGID: 988
|
||||||
|
TZ: ${TZ:-America/Chicago}
|
||||||
|
volumes:
|
||||||
|
- ${STACK_CONFIG_ROOT:-/opt/streamhoard-config}/radarr:/config
|
||||||
|
- ${MEDIA_NAS_ROOT:-/mnt/nas/video}:/mnt/nas/video
|
||||||
|
|
||||||
|
sonarr:
|
||||||
|
image: lscr.io/linuxserver/sonarr:latest
|
||||||
|
container_name: streamhoard-sonarr
|
||||||
|
restart: unless-stopped
|
||||||
|
network_mode: "service:gluetun"
|
||||||
|
depends_on:
|
||||||
|
- gluetun
|
||||||
|
environment:
|
||||||
|
PUID: 999
|
||||||
|
PGID: 988
|
||||||
|
TZ: ${TZ:-America/Chicago}
|
||||||
|
volumes:
|
||||||
|
- ${STACK_CONFIG_ROOT:-/opt/streamhoard-config}/sonarr:/config
|
||||||
|
- ${MEDIA_NAS_ROOT:-/mnt/nas/video}:/mnt/nas/video
|
||||||
|
|
||||||
|
prowlarr:
|
||||||
|
image: lscr.io/linuxserver/prowlarr:latest
|
||||||
|
container_name: streamhoard-prowlarr
|
||||||
|
restart: unless-stopped
|
||||||
|
network_mode: "service:gluetun"
|
||||||
|
depends_on:
|
||||||
|
- gluetun
|
||||||
|
environment:
|
||||||
|
PUID: 999
|
||||||
|
PGID: 988
|
||||||
|
TZ: ${TZ:-America/Chicago}
|
||||||
|
volumes:
|
||||||
|
- ${STACK_CONFIG_ROOT:-/opt/streamhoard-config}/prowlarr:/config
|
||||||
|
|
||||||
|
# ============ Docker management GUI ============
|
||||||
|
portainer:
|
||||||
|
image: portainer/portainer-ce:latest
|
||||||
|
container_name: streamhoard-portainer
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "9443:9443"
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- portainer-data:/data
|
||||||
|
networks:
|
||||||
|
- streamhoard
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
streamhoard:
|
streamhoard:
|
||||||
driver: bridge
|
driver: bridge
|
||||||
@@ -69,3 +170,5 @@ networks:
|
|||||||
volumes:
|
volumes:
|
||||||
mongo-data:
|
mongo-data:
|
||||||
driver: local
|
driver: local
|
||||||
|
portainer-data:
|
||||||
|
driver: local
|
||||||
|
|||||||
Reference in New Issue
Block a user