[Support] binhex - qBittorrentVPN


Recommended Posts

On 7/21/2020 at 11:17 AM, CS01-HS said:

Next time it happens test container connectivity by running something like:


docker exec -it vpn curl ipinfo.io

I renamed my container vpn. Substitute whatever name you have in the command above. If everything's working it should return your VPN IP and additional details.

 

To test the connection and restart containers automatically you can run Rebuild-DNDC available in the Community Apps. Detailed description here:

https://github.com/elmerfdz/rebuild-dndc

So it just happened again for the first time since your post. I tested connectivity with your idea and it seems to be fine, same as it says when it is working. I'm not sure Rebuild-DNDC will fix it because as far as I can tell that rebuild dependencies between different containers, but this is all within one. I may be misunderstanding it though. I've left it broken in case anyone has any ideas for testing. 

 

Does it have to do with this line in the qb container log?

 

[info] qBittorrent listening interface IP x.x.x.x and VPN provider IP x.x.x.y different, marking for reconfigure
 

or this one?

 

Sat Jul 25 02:17:58 2020 [openvpn2.vpnunlimitedapp.com] Inactivity timeout (--ping-exit), exiting
 

Edited by xMaverickx
Link to comment

Rebuild-DNDC will automatically restart the main container (qBittorrent) as well so it'd help if you lose connectivity but it looks like you haven't since the curl command returns your VPN IP.

 

I don't see any inactivity timeouts in my log just a series of successful curl commands to portchecker.co

 

Sorry I can't help more.

Link to comment
7 hours ago, jrabkid said:

I've set the directories up as I want but it wont download anything

I think based on the rest of your post that you don't really understand docker volume mapping. And the way you have specified paths in your post is ambiguous in one place and very likely wrong in the other.

 

Start with posting your docker run for this container as explained at this very first link in the Docker FAQ:

 

 

Link to comment

I've setup an 'external program' in the qBittorrent settings from which I do a curl command to another PHP container in the same docker network. However unlike other containers I'm not able to resolve the PHP container's hostname to the IP address.

 

For example I'm doing curl "http://nginx/qbit/index.php", but it can't resolve. Anyone knows what I can change to reach other containers by hostname?

Link to comment
22 hours ago, CS01-HS said:

Rebuild-DNDC will automatically restart the main container (qBittorrent) as well so it'd help if you lose connectivity but it looks like you haven't since the curl command returns your VPN IP.

 

I don't see any inactivity timeouts in my log just a series of successful curl commands to portchecker.co

 

Sorry I can't help more.

No worries, thanks for trying. For the time being, in case anyone else has a similar issue, I've set up a custom user script using the user scripts plugin that just says "docker restart qbittorrentvpn" and have it set to run daily.

Link to comment

I'm having some trouble connecting to the webGUI while "VPN_ENABLED=yes".

 

I am absolutely sure that my Username and Password are correct, I switched my password as to make sure none of the special characters were causing authentication issues.

 

I did attempt some of the fixes but so far no dice.

 

Attached is the log file from my docker container. Thank you in advance.

supervisord.log

Link to comment
On 7/29/2020 at 12:14 AM, Atom Chaney said:

I'm having some trouble connecting to the webGUI while "VPN_ENABLED=yes".

 

I am absolutely sure that my Username and Password are correct, I switched my password as to make sure none of the special characters were causing authentication issues.

 

I did attempt some of the fixes but so far no dice.

 

Attached is the log file from my docker container. Thank you in advance.

supervisord.log 166.28 kB · 4 downloads

nothing wrong with that. successful startup, check the following:-

 

1. wrong lan_network - is this correct for the client pc running the web browser? - 2020-07-28 18:58:56.217144 [info] LAN_NETWORK defined as '10.0.0.0/24'

2. check vlan - is your client pc running web browser being blocked?

3. firewall on host - any firewall running on the host?, if so disable it

4. make sure port defined for key ' WEBUI_PORT' matches the port you have defined for host and container.

Link to comment

Hello, I cannot access the web interface when I change the WEBUI_PORT.

 

with :

docker run -d \
    --cap-add=NET_ADMIN \
    -p 6881:6881 \
    -p 6881:6881/udp \
    -p 8080:8090 \
    -p 8118:8118 \
    --name=qbittorrentvpn \
    -v /home/torrent/download:/download \
    -v /home/torrent/config:/config \
    -v /etc/localtime:/etc/localtime:ro \
    -e VPN_ENABLED=yes \
    -e VPN_PROV=airvpn \
    -e ENABLE_PRIVOXY=no \
    -e LAN_NETWORK=192.168.1.0/24 \
    -e NAME_SERVERS=209.222.18.222,84.200.69.80,37.235.1.174,1.1.1.1,209.222.18.218,37.235.1.177,84.200.70.40,1.0.0.1 \
    -e ADDITIONAL_PORTS=1234 \
    -e DEBUG=false \
    -e WEBUI_PORT=8090 \
    -e UMASK=000 \
    -e PUID=1001 \
    -e PGID=1001 \
    binhex/arch-qbittorrentvpn

 

docker ps

CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS                                                                                                      NAMES
12aa8f2ec4cd        binhex/arch-qbittorrentvpn   "/usr/bin/tini -- /b…"   4 minutes ago       Up 13 seconds       0.0.0.0:6881->6881/tcp, 0.0.0.0:8118->8118/tcp, 0.0.0.0:6881->6881/udp, 8080/tcp, 0.0.0.0:8080->8090/tcp   qbittorrentvpn

 

qBittorrent.conf

[AutoRun]
enabled=false
program=

[Preferences]
Connection\PortRangeMin=6881
Connection\UPnP=false
General\Locale=en
General\UseRandomPort=false
Queueing\QueueingEnabled=false
WebUI\Address=*
WebUI\CSRFProtection=false
WebUI\LocalHostAuth=false
WebUI\Port=8090
WebUI\ServerDomains=*
WebUI\UseUPnP=false

 

Have you an idea ?

 

Edited by lowfab
solved (-p 8080:8090 \) !!
Link to comment

First of all, thank you for all your great work! Been using a number of your Dockers for a while now. 

 

I discovered this great photo management program called digiKam (https://www.digikam.org/) with great features (https://www.digikam.org/about/features/).

 

The latest version 7.0.0 is available on Arch Linux so I tried to make a Docker for it. With your excellent base template it was quite easy. I'm running it now from a private repository on my Unraid and it seems to work quite well.

 

Would you be interested in adding it to your official repository?

 

Here is what I have so far:

https://github.com/redindian/unraid

https://github.com/redindian/arch-digikam

https://hub.docker.com/repository/docker/redindian/arch-digikam

Link to comment

i make this, but it's not perfect. The second services (dqbtx) does not work well. The web interface is faulty. Do you have another solution?

 

version: '3.7'
services:
  dqbt:
    image: binhex/arch-qbittorrentvpn:latest
    container_name: dqbt
    cap_add:
      - NET_ADMIN
    ports:
      - 6881:6881
      - 6881:6881/udp
      - 8282:8282
    environment:
      - PUID=1000
      - PGID=1000
      - VPN_ENABLED=yes
      - VPN_PROV=airvpn
      - ENABLE_PRIVOXY=no
      - LAN_NETWORK=192.168.1.0/24
      - NAME_SERVERS=209.222.18.222,84.200.69.80,37.235.1.174,1.1.1.1,209.222.18.218,37.235.1.177,84.200.70.40,1.0.0.1
      - WEBUI_PORT=8282
      - ADDITIONNAL_PORTS=1234
      - UMASK=000
      - DEBUG=false
    volumes:
      - /home/lowfab/dqbtconfig:/config
      - /etc/localtime:/etc/localtime:ro
      - /home/lowfab/dqbt:/dqbt
  dqbtx:
    image: binhex/arch-qbittorrentvpn:latest
    container_name: dqbtx
    cap_add:
      - NET_ADMIN
    ports:
      - 8090:8080
      - 6891:6881
      - 6891:6881/udp
      - 8128:8118
      - 8383:8383
    environment:
      - PUID=1000
      - PGID=1000
      - VPN_ENABLED=yes
      - VPN_PROV=airvpn
      - ENABLE_PRIVOXY=no
      - LAN_NETWORK=192.168.1.0/24
      - NAME_SERVERS=209.222.18.222,84.200.69.80,37.235.1.174,1.1.1.1,209.222.18.218,37.235.1.177,84.200.70.40,1.0.0.1
      - WEBUI_PORT=8383
      - ADDITIONNAL_PORTS=1244
      - UMASK=000
      - DEBUG=false
    volumes:
      - /home/lowfab/dqbtconfig2:/config
      - /etc/localtime:/etc/localtime:ro
      - /home/lowfab/dqbt2:/dqbt

Link to comment
On 7/26/2020 at 10:02 AM, Rourke said:

I've setup an 'external program' in the qBittorrent settings from which I do a curl command to another PHP container in the same docker network. However unlike other containers I'm not able to resolve the PHP container's hostname to the IP address.

 

For example I'm doing curl "http://nginx/qbit/index.php", but it can't resolve. Anyone knows what I can change to reach other containers by hostname?

Is there any way this qBittorrent container can talk to other containers in the same network by hostname/container name?

Link to comment
On 8/3/2020 at 3:28 PM, Rourke said:

Is there any way this qBittorrent container can talk to other containers in the same network by hostname/container name?

i tend not to rely on dns and instead simply use the hosts ip address to communicate between containers, give it a try.

Link to comment

Hello, Thank you for this beautiful work. Is it possible to run 2 qBittorrentVPN containers on the same docker server modifying the ports of the 2nd instance. I can't do it the 2nd does not work properly (web interface accessible but qbittorrent not accessible when download active on the 1st)?

Link to comment
On 7/30/2020 at 7:20 AM, binhex said:

nothing wrong with that. successful startup, check the following:-

 

1. wrong lan_network - is this correct for the client pc running the web browser? - 2020-07-28 18:58:56.217144 [info] LAN_NETWORK defined as '10.0.0.0/24'

 

This. This is what was causing my issue. Changing "LAN_NETWORK" from 10.0.0.0 to 10.0.0.1 now allows me to access the webui with VPN=yes.

 

Thanks!

Link to comment
20 hours ago, CS01-HS said:

Does the proxy setup offer some advantage over setting qbittorrent as the container network for Sonarr, etc. (per Part 2 here)? 

for sonarr, no as sonarr only requires http/https and privoxy can do this. The advantage of using the connect networks method is when the protocols used are not just http/https and there is no vpn enabled docker image available, then you can secure the docker container by linking the network to one of my vpn enabled containers and all protocols will then be forced down the vpn tunnel.

  • Thanks 1
Link to comment

As we all know, PIA is currently moving their infrastructure, which results in pretty terribly reliability and constant connection issues when using their CurrentGen Network. Today, however, I discovered that they offer OpenVPN confs for their NextGen servers: https://www.privateinternetaccess.com/pages/download

 

AFAICT they work reliable. Only way to use them currently is to set the STRICT_PORT_FORWARD ENV variable to "no", since their NextGen network doesn't seem to support port forwarding yet.

  • Thanks 2
Link to comment
9 hours ago, SignedOne said:

As we all know, PIA is currently moving their infrastructure, which results in pretty terribly reliability and constant connection issues when using their CurrentGen Network. Today, however, I discovered that they offer OpenVPN confs for their NextGen servers: https://www.privateinternetaccess.com/pages/download

 

AFAICT they work reliable. Only way to use them currently is to set the STRICT_PORT_FORWARD ENV variable to "no", since their NextGen network doesn't seem to support port forwarding yet.

For anyone having issues with this container while using PIA, this guy's comment fixed it for me. Switched to a NextGen OVPN file and it now works for me. This was super frustrating!

Link to comment

Hi Everyone:


I am currently having issues with Sonarr and Radarr connecting to qBitTorrent, not sure if it's a problem with them or QBT, although I suspect it's QBT (since Sonarr and Radarr both used to work, then they suddently stopped working with Qbittorrent, but NZBGet still works. I hope someone can help me, Google can't find anything on this:

I tried removing and pulling down the QBT container again, same issue, when I try to add the download client to sonarr or radarr, it wont. I get the following error:
 

Unable to test qBittorrent: Invalid character after parsing property name. Expected ':' but got: t. Path 'web_ui_csrf_protection_enabled', line 1, position 3587. (Json snippet 'd":false,"web_ui_cu"<--error-->tetivtimS,"te_minbuf')

Newtonsoft.Json.JsonReaderException: Invalid character after parsing property name. Expected ':' but got: t. Path 'web_ui_csrf_protection_enabled', line 1, position 3587. (Json snippet 'd":false,"web_ui_cu"<--error-->tetivtimS,"te_minbuf') ---> Newtonsoft.Json.JsonReaderException: Invalid character after parsing property name. Expected ':' but got: t. Path 'web_ui_csrf_protection_enabled', line 1, position 3587. at Newtonsoft.Json.JsonTextReader.ParseProperty () [0x00116] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonTextReader.ParseObject () [0x000d8] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonTextReader.Read () [0x00053] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x0028e] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00161] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000d9] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00053] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at NzbDrone.Common.Serializer.Json.Deserialize[T] (System.String json) [0x00000] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Common\Serializer\Json.cs:40 --- End of inner exception stack trace --- at NzbDrone.Common.Serializer.Json.Deserialize[T] (System.String json) [0x0000e] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Common\Serializer\Json.cs:44 at NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentProxyV2.ProcessRequest[TResult] (NzbDrone.Common.Http.HttpRequestBuilder requestBuilder, NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentSettings settings) [0x00008] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Core\Download\Clients\QBittorrent\QBittorrentProxyV2.cs:270 at NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentProxyV2.GetConfig (NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentSettings settings) [0x00012] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Core\Download\Clients\QBittorrent\QBittorrentProxyV2.cs:82 at NzbDrone.Core.Download.Clients.QBittorrent.QBittorrent.TestConnection () [0x000cd] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Core\Download\Clients\QBittorrent\QBittorrent.cs:258

 

When I try to save instead of test I similarly get:

 

Unable to test qBittorrent: Unexpected character encountered while parsing value: d. Path 'upnp_lease_duratiohedr', line 1, position 3403. (Json snippet '_lease_duratiohedr":<--error-->d":ablee_,"sah":aler')

 

Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: d. Path 'upnp_lease_duratiohedr', line 1, position 3403. (Json snippet '_lease_duratiohedr":<--error-->d":ablee_,"sah":aler') ---> Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: d. Path 'upnp_lease_duratiohedr', line 1, position 3403. at Newtonsoft.Json.JsonTextReader.ParseValue () [0x002b3] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonTextReader.Read () [0x0004c] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00267] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00161] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000d9] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00053] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <c5b8b1476b514bcaad468ae001c1fb99>:0 at NzbDrone.Common.Serializer.Json.Deserialize[T] (System.String json) [0x00000] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Common\Serializer\Json.cs:40 --- End of inner exception stack trace --- at NzbDrone.Common.Serializer.Json.Deserialize[T] (System.String json) [0x0000e] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Common\Serializer\Json.cs:44 at NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentProxyV2.ProcessRequest[TResult] (NzbDrone.Common.Http.HttpRequestBuilder requestBuilder, NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentSettings settings) [0x00008] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Core\Download\Clients\QBittorrent\QBittorrentProxyV2.cs:270 at NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentProxyV2.GetConfig (NzbDrone.Core.Download.Clients.QBittorrent.QBittorrentSettings settings) [0x00012] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Core\Download\Clients\QBittorrent\QBittorrentProxyV2.cs:82 at NzbDrone.Core.Download.Clients.QBittorrent.QBittorrent.TestConnection () [0x000cd] in C:\BuildAgent\work\5d7581516c0ee5b3\src\NzbDrone.Core\Download\Clients\QBittorrent\QBittorrent.cs:258

 

Anyone have any ideas?

Thanks!

Link to comment
On 8/16/2020 at 10:22 PM, SignedOne said:

As we all know, PIA is currently moving their infrastructure, which results in pretty terribly reliability and constant connection issues when using their CurrentGen Network. Today, however, I discovered that they offer OpenVPN confs for their NextGen servers: https://www.privateinternetaccess.com/pages/download

 

AFAICT they work reliable. Only way to use them currently is to set the STRICT_PORT_FORWARD ENV variable to "no", since their NextGen network doesn't seem to support port forwarding yet.

Thank you very much for this. I had to turn my server off for some maintenance and I thought that was the problem, but it was this. Next-gen config files work for me, but no actual torrent client activity until port forwarding is supported. Any ideas when that will be?

Link to comment
1 hour ago, thatsthefrickenlightning said:

Thank you very much for this. I had to turn my server off for some maintenance and I thought that was the problem, but it was this. Next-gen config files work for me, but no actual torrent client activity until port forwarding is supported. Any ideas when that will be?

No idea, unfortunately. Though I'll probably switch to a different container, since the binhex containers still tend to hang a lot and don't reconnect automatically, they often get stuck at steps like "marking for reconfigure", requiring daily restarts and horrible availability, even if the VPN servers themselves are stable enough.

  • Thanks 1
Link to comment
18 hours ago, SignedOne said:

No idea, unfortunately. Though I'll probably switch to a different container, since the binhex containers still tend to hang a lot and don't reconnect automatically, they often get stuck at steps like "marking for reconfigure", requiring daily restarts and horrible availability, even if the VPN servers themselves are stable enough.

i took a look at this image and did spot a long standing issue with pgrep causing issues, this bug has been fixed upstream and the image has been rebuilt with the fix, please pull down the latest image and let me know if it now works correctly when reconfiguration is required (i.e. openvpn drop or port closed).

  • Like 1
  • Thanks 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.