qBittorrent w/ Docker and Raspberry Pi

I thought this would be simple - I’m new to Docker and just wanted to self-contain qBittorrent on my Pi (with hopes of adding a VPN to that container only in the future).

It hasn’t been easy, and I can’t find the answer, despite what I think is a vanilla installation.

I’ve figured out the libseccomp issue, and tried multiple ports, but when I log into the WEBUI, it looks fine for a second, then gives an error at the bottom “qBittorrent client is unreachable” and when I go to Tools/Options it gives only “Error: n”

I’ve tried without my VPN running on the Pi - it’s now behind just a standard router - and qBittorrent runs without issues when installed on the Pi w/o Docker.

What dumb mistake did I make?

I think my yml is pretty standard:

version: “2.1”
services:
qbittorrent:
image: lscr.io/linuxserver/qbittorrent
container_name: qbittorrent
environment:
- PUID=100
- PGID=100
- TZ=America/New_York
- WEBUI_PORT=8888
volumes:
- /opt/qbit-data:/config
- /mnt/Share/DropFolder:/downloads
ports:
- 6881:6881
- 6881:6881/udp
- 1080:1080
- 1080:1080/udp
- 8888:8888
restart: unless-stopped

When I bash into the container, all of the volumes are attached properly.

qbittorrent.log

(I) 2022-01-21T17:00:16 - UPnP / NAT-PMP support [OFF]
(N) 2022-01-21T17:00:24 - qBittorrent v4.4.0 started
(N) 2022-01-21T17:00:24 - Using config directory: /config/qBittorrent
(I) 2022-01-21T17:00:24 - Trying to listen on: 0.0.0.0:7797,[::]:7797
(N) 2022-01-21T17:00:24 - Peer ID: -qB4400-
(N) 2022-01-21T17:00:24 - HTTP User-Agent is ‘qBittorrent/4.4.0’
(I) 2022-01-21T17:00:24 - DHT support [ON]
(I) 2022-01-21T17:00:24 - Local Peer Discovery support [ON]
(I) 2022-01-21T17:00:24 - PeX support [ON]
(I) 2022-01-21T17:00:24 - Anonymous mode [OFF]
(I) 2022-01-21T17:00:24 - Encryption support [ON]
(I) 2022-01-21T17:00:24 - UPnP / NAT-PMP support [ON]
(I) 2022-01-21T17:00:24 - IP geolocation database loaded. Type: DBIP-Country-Lite. Build time: Fri Dec 31 20:11:53 2021.
(N) 2022-01-21T17:00:24 - Using built-in Web UI.
(W) 2022-01-21T17:00:24 - Couldn’t load Web UI translation for selected locale (C).
(N) 2022-01-21T17:00:24 - Web UI: Now listening on IP: *, port: 8888
(I) 2022-01-21T17:00:24 - Successfully listening on IP: 127.0.0.1, port: TCP/7797
(I) 2022-01-21T17:00:24 - Successfully listening on IP: 127.0.0.1, port: UTP/7797
(I) 2022-01-21T17:00:24 - Successfully listening on IP: 172.16.57.2, port: TCP/7797
(I) 2022-01-21T17:00:24 - Successfully listening on IP: 172.16.57.2, port: UTP/7797
(I) 2022-01-21T17:00:25 - Detected external IP: 45.132.226.120
(N) 2022-01-21T17:00:35 - WebAPI login success. IP: ::ffff:192.168.2.199
(N) 2022-01-21T17:00:45 - WebAPI login success. IP: ::ffff:192.168.2.199
(N) 2022-01-21T17:01:33 - WebAPI login success. IP: ::ffff:192.168.2.199
(C) 2022-01-21T17:03:00 - UPnP/NAT-PMP: Port mapping failure, message: could not map port using UPnP[172.16.57.2]: no router found
(C) 2022-01-21T17:03:00 - UPnP/NAT-PMP: Port mapping failure, message: could not map port using UPnP[172.16.57.2]: no router found
(C) 2022-01-21T17:03:00 - UPnP/NAT-PMP: Port mapping failure, message: could not map port using UPnP[172.16.57.2]: no router found

docker logs -f qbittorrent

[s6-init] making user provided files available at /var/run/s6/etc…exited 0.
[s6-init] ensuring user provided files have correct perms…exited 0.
[fix-attrs.d] applying ownership & permissions fixes…
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts…
[cont-init.d] 01-envfile: executing…
[cont-init.d] 01-envfile: exited 0.
[cont-init.d] 01-migrations: executing…
[migrations] started
[migrations] no migrations found
[cont-init.d] 01-migrations: exited 0.
[cont-init.d] 10-adduser: executing…
–graphics removed–
GID/UID
User uid: 100
User gid: 406
[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing…
[cont-init.d] 30-config: exited 0.
[cont-init.d] 90-custom-folders: executing…
[cont-init.d] 90-custom-folders: exited 0.
[cont-init.d] 99-custom-files: executing…
[custom-init] no custom files found exiting…
[cont-init.d] 99-custom-files: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
******** Information ********
To control qBittorrent, access the WebUI at: http://localhost:8888

Just wanted to let you know, you ARE NOT ALONE. If you check some of the upstream projects for qBittorrent docker images they pushed an upgrade to 4.4.0 recently and it’s caused a slew of issues for everyone.

I happen to have a very similar setup to you (PI4 8GB, Docker, qBittorrent) that has been working perfectly for months. I updated the container via compose and got 4.4.0 and it’s broken in the same way you’ve described. It will run fine for various periods of time and then bam, the web interface locks up and the application becomes useless… Container is still running and I can console in, but it’s majorly broken right now.

I’ve been banging my head against the problem for about a week now, but if I stumble into the answer I’ll be sure to come back and share.

Interesting/important to note, I have NZBget running it’s network through the qBittorrent container, and it can download while qB is unresponsive and I can even reach the webUI of nzbget while qb is choking to death…

One thing you could do is shut of UPnP in qBittorent (in the config file if you can’t get to the webUI) and manually create the port forwarding for 6881 in your router. That would get rid of this error:
“(C) 2022-01-21T17:03:00 - UPnP/NAT-PMP: Port mapping failure, message: could not map port using UPnP[172.16.57.2]: no router found”

Remember, blindly updating causes issues like this. Be responsible and pay attention to what an upgrade entails to avoid situations like this. qbit 4.4 changes a large number of things in how it functions and also has some known bugs which are documented on their github.

I wish I could say “be responsible and pay attention” to the upstream teams that pushed out 4.4.0 lol.

Trust me, I am right there with you on that front.

My config file is basically empty, as it’s never properly run

[BitTorrent]
Session\Port=8888
Session\QueueingSystemEnabled=false
[LegalNotice]
Accepted=true
[Meta]
MigrationVersion=2
[Preferences]
WebUI\Port=8888

Is there a way to force to pull a known working version? Which version does work?

To be fair, this topic was about a fresh install.

from a fresh install perspective, i have no issues

qBittorrent change to Alpine | Info :: LinuxServer.io

I changed my YAML to

image: lscr.io/linuxserver/qbittorrent:version-14.3.9.99202110311443-7435-01519b5e7ubuntu20.04.1

I think that’s what I was supposed to, anyway… and I’m exactly where I was (not working)

Can you share your YAML? Is this running on a Pi4?