Sign inSign up

jaap14/reflection

By jaap14

•Updated 8 months ago

Image
0

629

jaap14/reflection repository overview

⁠Reflection for qBittorrent 5.x

A bridge that makes qBittorrent appear as a Transmission client. Use Transmission-compatible apps like Truing⁠, Transmission Remote GUI, or any other Transmission RPC client to manage your qBittorrent instance.

This fork is patched to work with qBittorrent 5.x and is not backwards compatible with qBittorrent 4.x.

⁠Quick Start

docker pull jaap14/reflection:latest
docker run -d --name reflection \
  jaap14/reflection:latest \
  -r http://your-qbittorrent:8080/ -p 9091

Then point your Transmission client to http://your-server:9091/transmission/rpc

⁠Docker Compose

version: "2.1"
services:
  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Los_Angeles
      - WEBUI_PORT=8080
    volumes:
      - /path/to/config:/config
      - /path/to/downloads:/downloads
    ports:
      - 8080:8080
      - 6881:6881
      - 6881:6881/udp
    networks:
      - torrents
    restart: unless-stopped

  reflection:
    image: jaap14/reflection:latest
    container_name: reflection
    command: ["-r", "http://qbittorrent:8080/", "-p", "9091"]
    ports:
      - 9091:9091
    networks:
      - torrents
    depends_on:
      - qbittorrent
    restart: unless-stopped

networks:
  torrents:
    name: torrents

⁠qBittorrent WebUI Configuration

For Reflection to connect, configure qBittorrent WebUI settings:

Settings → WebUI → IP Filtering

  • Add your Docker network to the whitelist (e.g., 172.16.0.0/12, 192.168.0.0/16)
  • Or disable "Enable Host header validation"

Authentication (optional)

-r http://username:password@qbittorrent:8080/

⁠Command Line Options

FlagDefaultDescription
-rhttp://localhost:8080/qBittorrent WebUI address
-p9091Reflection listen port
-vfalseVerbose logging
-dfalseDebug logging
-synctrueUse sync endpoint
-cache-timeout15Cache timeout in seconds

⁠Features

  • Full torrent management: Start, stop, remove, add torrents
  • Labels: qBittorrent categories and tags mapped to Transmission labels
  • Trackers: Real tracker URLs (DHT/PeX/LSD filtered)
  • Statistics: Upload/download speeds, ratios, peer counts
  • Multi-client: Run alongside actual Transmission instances

⁠qBittorrent 5.x API Changes

Endpoint4.x5.x
Pausetorrents/pausetorrents/stop
Resumetorrents/resumetorrents/start
DeleteGETPOST
Create categoryGETPOST

⁠Troubleshooting

403 Forbidden - Whitelist Docker networks or disable host header validation

Empty reply - Check container name matches URL, verify same Docker network

Session load failed - Pull latest image, check docker logs reflection

⁠Source

GitHub: jaapjan14/Reflection⁠

Based on h31/Reflection⁠, updated for qBittorrent 5.x.

Tag summary

Content type

Image

Digest

sha256:3ad8ffc5b…

Size

8.8 MB

Last updated

8 months ago

docker pull jaap14/reflection