diff --git a/downloader.docker-compose.yml b/downloader.docker-compose.yml index 9a70889..7a36be3 100644 --- a/downloader.docker-compose.yml +++ b/downloader.docker-compose.yml @@ -33,8 +33,11 @@ services: - 8888:8888/tcp # HTTP proxy - 8388:8388/tcp # Shadowsocks - 8388:8388/udp # Shadowsocks + environment: + - VPN_PORT_FORWARDING_STATUS_FILE=/tmp/gluetun/forwarded_port volumes: - gluetun:/gluetun + - gluetun_port:/tmp/gluetun networks: - array labels: @@ -63,6 +66,33 @@ services: - "traefik.http.routers.gluetun-http.middlewares=redirect-to-https" - "traefik.http.routers.gluetun-http.priority=100" - "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https" + + array-qbt-gt-portmapping: + image: patrickaclark/gluetun-qbittorrent-port-manager:latest + restart: unless-stopped + container_name: array-qbt-gt-portmapping + network_mode: "service:gluetun" + volumes: + - gluetun_port:/tmp/gluetun + environment: + - QBITTORRENT_SERVER=array-gluetun # IP Address of qbittorrent + - QBITTORRENT_PORT=8080 + - PORT_FORWARDED=/tmp/gluetun/forwarded_port + - HTTP_S=http # Select 'http' or 'https' depending on if you use certificates. + - GLUETUN_HOST=localhost # IP or FQDN of gluetun control server + - GLUETUN_PORT=8000 # port of gluetun control server + - RECHECK_TIME=60 # number of seconds between checks to gluetun server for port + - TZ=Europe/Berlin + healthcheck: + test: ["CMD", "curl", "-H", "Authorization: $controlServerAuthKey", "-s", "http://localhost:8000/v1/openvpn/status", "|", "grep", "-q", '{"status":"running"}'] + interval: 30s + timeout: 10s + start_period: 60s + retries: 3 + +volumes: + gluetun_port: + networks: array: - external: true \ No newline at end of file + external: true