153 lines
4.1 KiB
YAML
153 lines
4.1 KiB
YAML
services:
|
|
gluetun:
|
|
image: qmcgaw/gluetun:latest
|
|
container_name: gluetun
|
|
restart: unless-stopped
|
|
cap_add:
|
|
- NET_ADMIN
|
|
devices:
|
|
- /dev/net/tun:/dev/net/tun
|
|
environment:
|
|
- VPN_SERVICE_PROVIDER=mullvad
|
|
- VPN_TYPE=wireguard
|
|
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY}
|
|
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}
|
|
- SERVER_CITIES=${SERVER_CITIES}
|
|
ports:
|
|
- "8080:8080"
|
|
volumes:
|
|
- gluetun_data:/gluetun
|
|
networks:
|
|
- proxy
|
|
healthcheck:
|
|
test: ["CMD", "/gluetun-entrypoint", "healthcheck"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 30s
|
|
labels:
|
|
- "traefik.enable=true"
|
|
# Sonarr
|
|
- "traefik.http.routers.sonarr.rule=Host(`sonarr.home.jens.pub`)"
|
|
- "traefik.http.routers.sonarr.entrypoints=websecure"
|
|
- "traefik.http.routers.sonarr.service=sonarr"
|
|
- "traefik.http.services.sonarr.loadbalancer.server.port=8989"
|
|
# Radarr
|
|
- "traefik.http.routers.radarr.rule=Host(`radarr.home.jens.pub`)"
|
|
- "traefik.http.routers.radarr.entrypoints=websecure"
|
|
- "traefik.http.routers.radarr.service=radarr"
|
|
- "traefik.http.services.radarr.loadbalancer.server.port=7878"
|
|
# Prowlarr
|
|
- "traefik.http.routers.prowlarr.rule=Host(`prowlarr.home.jens.pub`)"
|
|
- "traefik.http.routers.prowlarr.entrypoints=websecure"
|
|
- "traefik.http.routers.prowlarr.service=prowlarr"
|
|
- "traefik.http.services.prowlarr.loadbalancer.server.port=9696"
|
|
# SABnzbd
|
|
- "traefik.http.routers.sabnzbd.rule=Host(`sabnzbd.home.jens.pub`)"
|
|
- "traefik.http.routers.sabnzbd.entrypoints=websecure"
|
|
- "traefik.http.routers.sabnzbd.service=sabnzbd"
|
|
- "traefik.http.services.sabnzbd.loadbalancer.server.port=8080"
|
|
|
|
sonarr:
|
|
image: lscr.io/linuxserver/sonarr:latest
|
|
container_name: sonarr
|
|
network_mode: "service:gluetun"
|
|
restart: unless-stopped
|
|
environment:
|
|
- PUID=${PUID}
|
|
- PGID=${PGID}
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- sonarr_config:/config
|
|
- ${TV_PATH}:/tv
|
|
- ${DOWNLOADS_PATH}:/downloads
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
|
|
radarr:
|
|
image: lscr.io/linuxserver/radarr:latest
|
|
container_name: radarr
|
|
network_mode: "service:gluetun"
|
|
restart: unless-stopped
|
|
environment:
|
|
- PUID=${PUID}
|
|
- PGID=${PGID}
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- radarr_config:/config
|
|
- ${MOVIES_PATH}:/movies
|
|
- ${DOWNLOADS_PATH}:/downloads
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
|
|
prowlarr:
|
|
image: lscr.io/linuxserver/prowlarr:latest
|
|
container_name: prowlarr
|
|
network_mode: "service:gluetun"
|
|
restart: unless-stopped
|
|
environment:
|
|
- PUID=${PUID}
|
|
- PGID=${PGID}
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- prowlarr_config:/config
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
|
|
sabnzbd:
|
|
image: lscr.io/linuxserver/sabnzbd:latest
|
|
container_name: sabnzbd
|
|
network_mode: "service:gluetun"
|
|
restart: unless-stopped
|
|
environment:
|
|
- PUID=${PUID}
|
|
- PGID=${PGID}
|
|
- TZ=${TZ}
|
|
- HOST_WHITELIST_ENTRIES=sabnzbd.home.jens.pub
|
|
volumes:
|
|
- sabnzbd_config:/config
|
|
- ${DOWNLOADS_PATH}:/downloads
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
|
|
seerr:
|
|
image: ghcr.io/seerr-team/seerr:latest
|
|
container_name: seerr
|
|
init: true
|
|
restart: unless-stopped
|
|
environment:
|
|
- TZ=${TZ}
|
|
volumes:
|
|
- ${SEERR_DATA_PATH}:/app/config
|
|
networks:
|
|
- proxy
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.seerr.rule=Host(`seerr.home.jens.pub`)"
|
|
- "traefik.http.routers.seerr.entrypoints=websecure"
|
|
- "traefik.http.services.seerr.loadbalancer.server.port=5055"
|
|
healthcheck:
|
|
test: wget --no-verbose --tries=1 --spider http://localhost:5055/api/v1/status || exit 1
|
|
start_period: 20s
|
|
timeout: 3s
|
|
interval: 15s
|
|
retries: 3
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
|
|
volumes:
|
|
gluetun_data:
|
|
sonarr_config:
|
|
radarr_config:
|
|
prowlarr_config:
|
|
sabnzbd_config:
|