132 lines
4.1 KiB
YAML
132 lines
4.1 KiB
YAML
services:
|
|
gluetun:
|
|
image: qmcgaw/gluetun
|
|
container_name: gluetun
|
|
# line above must be uncommented to allow external containers to connect.
|
|
# See https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md#external-container-to-gluetun
|
|
cap_add:
|
|
- NET_ADMIN
|
|
devices:
|
|
- /dev/net/tun:/dev/net/tun
|
|
ports:
|
|
- 8000:8000/tcp # Gluetun's built-in HTTP control server
|
|
- 8888:8888/tcp # Gluetun's built-in HTTP proxy
|
|
- 8388:8388/tcp # Gluetun's built-in Shadowsocks server
|
|
- 8388:8388/udp # Gluetun's built-in Shadowsocks server
|
|
- 8089:8089/tcp # Qbittorrent web-ui
|
|
- 8090:8090/tcp # Qbittorrent2 web-gui
|
|
- 8069:8069/tcp # Qbittorrent_priv web-gui
|
|
- 3000:3000 # Firefox desktop gui
|
|
- 3001:3001 # Firefox desktop gui HTTPS
|
|
volumes:
|
|
- /home/fejy/docker/gluetun:/gluetun
|
|
environment:
|
|
# See https://github.com/qdm12/gluetun-wiki/tree/main/setup#setup
|
|
- VPN_SERVICE_PROVIDER=mullvad
|
|
- VPN_TYPE=wireguard
|
|
# Wireguard:
|
|
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIV_KEY}
|
|
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDR}
|
|
- SERVER_CITIES=Amsterdam
|
|
- HTTP_CONTROL_SERVER_ADDRESS=:8000
|
|
- HTTP_CONTROL_SERVER_LOG=ON
|
|
restart: unless-stopped
|
|
networks:
|
|
- proxy
|
|
labels:
|
|
# Traefik
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=proxy"
|
|
# 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"
|
|
# 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"
|
|
|
|
qbittorrent:
|
|
image: lscr.io/linuxserver/qbittorrent:latest
|
|
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/LUXURIA/Private:/Private
|
|
- /mnt/downloads:/downloads/
|
|
network_mode: "service:gluetun"
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
qbittorrent2:
|
|
image: lscr.io/linuxserver/qbittorrent:latest
|
|
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/LUXURIA/Private:/Private
|
|
- /mnt/downloads:/downloads/
|
|
network_mode: "service:gluetun"
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
qbittorrent_priv:
|
|
image: lscr.io/linuxserver/qbittorrent:latest
|
|
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/LUXURIA/Private:/mnt/LUXURIA/Private
|
|
- /mnt/downloads:/downloads/
|
|
network_mode: "service:gluetun"
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
mam-api:
|
|
image: myanonamouse/seedboxapi
|
|
container_name: mam-api
|
|
user: 1029:1000
|
|
environment:
|
|
- DEBUG=1
|
|
#- mam_id=<Grab from security settings>
|
|
- interval=1
|
|
volumes:
|
|
- /home/fejy/docker/mam-api:/config
|
|
network_mode: "service:gluetun"
|
|
depends_on:
|
|
gluetun:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|