Files
docker-compose-stack/pirate-ship/compose.yml
2026-04-21 07:48:36 -07:00

160 lines
4.9 KiB
YAML

services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
ports:
- 8089:8089/tcp # Qbittorrent web-ui
- 8090:8090/tcp # Qbittorrent2 web-gui
- 8091:8091/tcp # Qbittorrent3 web-gui
- 8069:8069/tcp # Qbittorrent_priv web-gui
- 5010:5010/tcp # Mousehole
volumes:
- /home/fejy/docker/gluetun:/gluetun
environment:
- VPN_SERVICE_PROVIDER=airvpn
- VPN_TYPE=wireguard
- FIREWALL_VPN_INPUT_PORTS=${qbit_portfw}
# Wireguard:
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIV_KEY}
- WIREGUARD_PRESHARED_KEY=${WIREGUARD_PSHARE_KEY}
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDR}
- SERVER_CITIES=Alblasserdam
- HTTP_CONTROL_SERVER_ADDRESS=:8000
- HTTP_CONTROL_SERVER_LOG=ON
- DOT=off
- BLOCK_MALICIOUS=off
- BLOCK_SURVEILLANCE=off
- BLOCK_ADS=off
restart: unless-stopped
networks:
- proxy
labels:
# Traefik
- "traefik.enable=true"
- "traefik.docker.network=proxy"
# Gluetun
- "traefik.http.routers.gluetun.rule=Host(`gluetun.nearfuture`)"
- "traefik.http.routers.gluetun.entrypoints=web"
- "traefik.http.routers.gluetun.service=gluetun"
- "traefik.http.services.gluetun.loadbalancer.server.port=8000"
# Qbittorrent
- "traefik.http.routers.qbit.rule=Host(`qbit.nearfuture`)"
- "traefik.http.routers.qbit.entrypoints=web"
- "traefik.http.routers.qbit.service=qbit"
- "traefik.http.services.qbit.loadbalancer.server.port=8089"
# Qbittorrent2
- "traefik.http.routers.qbit2.rule=Host(`qbit2.nearfuture`)"
- "traefik.http.routers.qbit2.entrypoints=web"
- "traefik.http.routers.qbit2.service=qbit2"
- "traefik.http.services.qbit2.loadbalancer.server.port=8090"
# Qbittorrent3
- "traefik.http.routers.qbit3.rule=Host(`qbit3.nearfuture`)"
- "traefik.http.routers.qbit3.entrypoints=web"
- "traefik.http.routers.qbit3.service=qbit3"
- "traefik.http.services.qbit3.loadbalancer.server.port=8091"
# Qbittorrent-priv
- "traefik.http.routers.qbit-priv.rule=Host(`qbit-priv.nearfuture`)"
- "traefik.http.routers.qbit-priv.entrypoints=web"
- "traefik.http.routers.qbit-priv.service=qbit-priv"
- "traefik.http.services.qbit-priv.loadbalancer.server.port=8069"
# Mousehole
- "traefik.http.routers.mousehole.rule=Host(`mousehole.nearfuture`)"
- "traefik.http.routers.mousehole.entrypoints=web"
- "traefik.http.routers.mousehole.service=mousehole"
- "traefik.http.services.mousehole.loadbalancer.server.port=5010"
# Watchtower
#- "com.centurylinklabs.watchtower.scope=watch"
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
container_name: qbittorrent
environment:
- PUID=1029
- PGID=1000
- TZ=Etc/UTC
- WEBUI_PORT=8089
volumes:
- /home/fejy/docker/qbittorrent:/config
- /mnt/LUXURIA/Share:/Share
- /mnt/downloads:/downloads/
network_mode: "service:gluetun"
depends_on:
gluetun:
condition: service_healthy
restart: on-failure:2
qbittorrent2:
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
container_name: qbittorrent2
environment:
- PUID=1029
- PGID=1000
- TZ=Etc/UTC
- WEBUI_PORT=8090
volumes:
- /home/fejy/docker/qbittorrent2:/config
- /mnt/LUXURIA/Share:/Share
- /mnt/downloads:/downloads/
network_mode: "service:gluetun"
depends_on:
gluetun:
condition: service_healthy
restart: on-failure:2
qbittorrent3:
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
container_name: qbittorrent3
environment:
- PUID=1029
- PGID=1000
- TZ=Etc/UTC
- WEBUI_PORT=8091
volumes:
- /home/fejy/docker/qbittorrent3:/config
- /mnt/AVARITIA/Share:/Avaritia/Share
network_mode: "service:gluetun"
depends_on:
gluetun:
condition: service_healthy
restart: on-failure:2
qbittorrent_priv:
image: lscr.io/linuxserver/qbittorrent:libtorrentv1
container_name: qbittorrent_priv
environment:
- PUID=1029
- PGID=1000
- TZ=Etc/UTC
- WEBUI_PORT=8069
volumes:
- /home/fejy/docker/qbittorrent_priv:/config
- /mnt/LUXURIA/Share:/mnt/LUXURIA/Share
- /mnt/AVARITIA/Private:/mnt/LUXURIA/Private
- /mnt/downloads:/downloads/
network_mode: "service:gluetun"
depends_on:
gluetun:
condition: service_healthy
restart: on-failure:2
mousehole:
image: tmmrtn/mousehole:latest
container_name: mousehole
network_mode: "service:gluetun"
environment:
- TZ=Etc/UTC
volumes:
- /home/fejy/docker/mousehole:/srv/mousehole
depends_on:
gluetun:
condition: service_healthy
restart: unless-stopped
networks:
proxy:
external: true