[Support] binhex - rTorrentVPN


Recommended Posts

Does this container have the AES CPU Instructions passed through? I have this running on an old CPU and the resources spike when maxing out my connection, but I don't think it has the CPU instructions. Can you even pass through those types of instructions to a docker container? 

Link to comment

Hey, new to the whole docker scene, and even newer to rtorrent vpn, and I'm having issues getting it to start. I was wondering if I could get some help?

 

Running Ubuntu 18.04 on a VM on a Windows 10 machine

 

Running rtorrent vpn with docker compose. compose here:

 

  rtorrent-vpn:
    image: binhex/arch-rtorrentvpn
    container_name: rtorrentvpn
    restart: always
    cap_add:
      - NET_ADMIN
    ports:
      - "9080:9080"
      - "9443:9443"
      - "8118:8118"
      - "3000:3000"
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ${USERDIR}/docker/rtorrent/config:/config
      - ${USERDIR}/docker/rtorrent/data:/data
    environment:
      - VPN_ENABLED=yes
      - VPN_USER=*******
      - VPN_PASS=*******
      - VPN_PROV=pia
      - STRICT_PORT_FORWARD=yes
      - ENABLE_PRIVOXY=yes
      - ENABLE_FLOOD=yes
      - ENABLE_AUTODL_IRSSI=yes
      - LAN_NETWORK=192.168.1.1/24
      - NAME_SERVERS=209.222.18.222,37.235.1.174,1.1.1.1,8.8.8.8,209.222.18.218,37.235.1.177,1.0.0.1,8.8.4.4
      - DEBUG=true
      - PHP_TZ=UTC
      - UMASK=022
      - PGID=${PGID}
      - PUID=${PUID}

When I start it, these are the logs:

https://pastebin.com/FH1V1Y9M

Something doesn't seem right, and I can't connect to flood either through my reverse proxy or through localhost.

 

I'd really appreciate any help :) if you want to contact me any way other than this, where conversing would be easier, I am on discord: MrMeeb#8289

Link to comment

@binhex thanks for all the dev work, this is great. however, my rutorrent is having issues detecting contents in /media. plex, filebot, and other apps can read/write the usb storage fine though. my directory is blank (similar to https://github.com/Novik/ruTorrent/issues/1647) when my download folder is set to /media. 

 

my docker cmd

docker -D run --restart always \
    --cap-add=NET_ADMIN \
    -p 9080:9080 \
    -p 9443:9443 \
    -p 8118:8118 \
    -p 3000:3000 \
    --name=rtorrentvpn \
    -v /home/chienb/docker/rtorrentvpn/data:/data \
    -v /home/chienb/docker/rtorrentvpn/config:/config \
    -v /etc/localtime:/etc/localtime:ro \
    -v /media/chienb/plex \
    -e VPN_ENABLED=yes \
    -e VPN_USER=* \
    -e VPN_PASS=* \
    -e VPN_PROV=pia \
    -e STRICT_PORT_FORWARD=yes \
    -e ENABLE_PRIVOXY=no \
    -e ENABLE_FLOOD=no \
    -e ENABLE_AUTODL_IRSSI=no \
    -e LAN_NETWORK=192.168.1.0/24 \
    -e NAME_SERVERS=209.222.18.222,37.235.1.174,1.1.1.1,8.8.8.8,209.222.18.218,37.235.1.177,1.0.0.1,8.8.4.4 \
    -e DEBUG=true \
    -e PHP_TZ=America/Los_Angeles \
    -e UMASK=002 \
    -e PUID=1000 \
    -e PGID=999 \
    binhex/arch-rtorrentvpn
$ id
uid=1000(chienb) gid=1000(chienb) groups=1000(chienb),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),114(lpadmin),115(sambashare),999(docker)
$ groups
chienb adm cdrom sudo dip plugdev lpadmin sambashare docker
<?php
    // configuration parameters

    // for snoopy client
    @define('HTTP_USER_AGENT', 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0', true);
    @define('HTTP_TIME_OUT', 30, true);    // in seconds
    @define('HTTP_USE_GZIP', true, true);
    $httpIP = null;                // IP string. Or null for any.

    @define('RPC_TIME_OUT', 5, true);    // in seconds

    @define('LOG_RPC_CALLS', false, true);
    @define('LOG_RPC_FAULTS', true, true);

    // for php
    @define('PHP_USE_GZIP', false, true);
    @define('PHP_GZIP_LEVEL', 2, true);

    $schedule_rand = 10;            // rand for schedulers start, +0..X seconds

    $do_diagnostic = true;
    $log_file = '/tmp/errors.log';        // path to log file (comment or leave blank to disable logging)

    $saveUploadedTorrents = true;        // Save uploaded torrents to profile/torrents directory or not
    $overwriteUploadedTorrents = false;     // Overwrite existing uploaded torrents in profile/torrents directory or make unique name

    $topDirectory = '/';            // Upper available directory. Absolute path with trail slash.
    $forbidUserSettings = false;

    $scgi_port = 5000;
    $scgi_host = "127.0.0.1";

    // For web->rtorrent link through unix domain socket 
    // (scgi_local in rtorrent conf file), change variables 
    // above to something like this:
    //
    // $scgi_port = 0;
    // $scgi_host = "unix:///tmp/rpc.socket";

    $XMLRPCMountPoint = "/RPC2";        // DO NOT DELETE THIS LINE!!! DO NOT COMMENT THIS LINE!!!

    $pathToExternals = array(
        "php"     => '',            // Something like /usr/bin/php. If empty, will be found in PATH.
        "curl"   => '/usr/bin/curl',            // Something like /usr/bin/curl. If empty, will be found in PATH.
        "gzip"    => '',            // Something like /usr/bin/gzip. If empty, will be found in PATH.
        "id"    => '',            // Something like /usr/bin/id. If empty, will be found in PATH.
        "stat"    => '',            // Something like /usr/bin/stat. If empty, will be found in PATH.
    );

    $localhosts = array(             // list of local interfaces
        "127.0.0.1",
        "localhost",
    );

    $profilePath = '../share';        // Path to user profiles
    $profileMask = 0777;            // Mask for files and directory creation in user profiles.
                        // Both Webserver and rtorrent users must have read-write access to it.
                        // For example, if Webserver and rtorrent users are in the same group then the value may be 0770.

    $tempDirectory = null;            // Temp directory. Absolute path with trail slash. If null, then autodetect will be used.

    $canUseXSendFile = false;        // If true then use X-Sendfile feature if it exist

    $locale = "UTF8";
# This is an example resource file for rTorrent. Copy to
# ~/.rtorrent.rc and enable/modify the options as needed. Remember to
# uncomment the options you wish to enable.

# Maximum and minimum number of peers to connect to per torrent.
#
#throttle.min_peers.normal.set = 40
#throttle.max_peers.normal.set = 100

# Same as above but for seeding completed torrents (-1 = same as downloading)
#
#throttle.min_peers.seed.set = 10
#throttle.max_peers.seed.set = 50

# Maximum number of simultanious uploads per torrent.
#
#throttle.max_uploads.set = 15

# Global upload and download rate in KiB. "0" for unlimited.
#
#throttle.global_down.max_rate.set_kb = 0
#throttle.global_up.max_rate.set_kb = 0

# Default directory to save the downloaded torrents.
#
#execute = {/bin/bash,-c,mkdir -p /data/incomplete}
directory.default.set = /media/chienb/plex

# Default session directory. Make sure you don't run multiple instance
# of rtorrent using the same session directory. Perhaps using a
# relative path?
#
execute = {/bin/bash,-c,mkdir -p /config/rtorrent/session}
session.path.set = /config/rtorrent/session/

# Watch a directory for new torrents, and stop those that have been
# deleted.
#
#schedule2 = watch_directory,5,5,load.start=./watch/*.torrent
#schedule2 = untied_directory,5,5,stop_untied=

# Close torrents when diskspace is low.
#
#schedule2 = low_diskspace,5,60,close_low_diskspace=100M

# The ip address reported to the tracker.
#
#network.local_address.set = 127.0.0.1
#network.local_address.set = rakshasa.no

# The ip address the listening socket and outgoing connections is
# bound to.
#
#network.bind_address.set = 127.0.0.1
#network.bind_address.set = rakshasa.no

# Port range to use for listening.
#
#network.port_range.set = 49160-49160

# Start opening ports at a random position within the port range.
#
network.port_random.set = no

# Disable check for SSL cert for tracker
#
network.http.ssl_verify_peer.set = 0

# Check hash for finished torrents. Might be useful until the bug is
# fixed that causes lack of diskspace not to be properly reported.
#
#pieces.hash.on_completion.set = no

# Set whether the client should try to connect to UDP trackers.
#
trackers.use_udp.set = yes

# Alternative calls to bind and ip that should handle dynamic ip's.
#
#schedule2 = ip_tick,0,1800,ip=rakshasa
#schedule2 = bind_tick,0,1800,bind=rakshasa

# Encryption options, set to none (default) or any combination of the following:
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
#
# The example value allows incoming encrypted connections, starts unencrypted
# outgoing connections but retries with encryption if they fail, preferring
# plaintext to RC4 encryption after the encrypted handshake
#
protocol.encryption.set = allow_incoming,enable_retry,prefer_plaintext

# Enable DHT support for trackerless torrents or when all trackers are down.
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).
# The default is "off". For DHT to work, a session directory must be defined.
# 
dht.mode.set = auto

# UDP port to use for DHT. 
#
#dht.port.set = 49170

# Enable peer exchange (for torrents not marked private)
#
protocol.pex.set = yes

# Set downlad list layout style. ("full", "compact")
#
#ui.torrent_list.layout.set = "full"

# SCGI Connectivity (for alternative rtorrent interfaces, XMLRPC)
#
# Use a IP socket with scgi_port, or a Unix socket with scgi_local.
# schedule can be used to set permissions on the unix socket.
#
scgi_port = 0.0.0.0:5000
#scgi_local = /home/user/rtorrent/rpc.socket
#schedule = scgi_permission,0,0,"execute.nothrow=chmod,\"g+w,o=\",/home/user/rtorrent/rpc.socket"

# Initialise ruTorrent plugins (required for rss and scheduler plugins) on startup 
# (normally triggered by a browser opening the web ui).
#
# The command below in practice does NOT always trigger (possible race condition?) and thus
# the same command has been added to the script /home/nobody/initplugins.sh in order to 
# attempt to ensure all plugins are initialised.
#
execute = {/bin/bash,-c,/usr/bin/sleep 10s && /usr/bin/php /usr/share/webapps/rutorrent/php/initplugins.php admin &}

method.set_key=event.download.finished,filebot,"execute={/home/chienb/plex/rt-postprocess.sh,$d.base_path=,$d.name=,$d.custom1=}"

i also realized that i don't have users rtorrent/rutorrent, do i create them and add to the docker group?

 

Update: I think I was able to fix it by editing the volume parameters 

-v /media/chienb/plex:/media/chienb/plex

 

Edited by omanko
Link to comment
11 hours ago, rikdegraaff said:

I just installed this app on my docker.

But now the WebUI is asking for a user/pass.

 

The default credentials for this docker are as follows:

User: admin

Pass: rutorrent

I have yet to determine how to change those.
 

I recently set this docker up and am having difficulty getting it to accept changes.

If I make settings changes in the webgui, the changes seem to stick, but when I restart the docker, no changes are preserved.

 

Can anyone advise?

Link to comment
4 hours ago, destrugter said:

'm having an issue where it seems that rtorrent isn't connecting to PIA

 

what makes you think its not connected to PIA?.

 

4 hours ago, destrugter said:

It keeps repeating the same message over and over again

 

it will do, you have debug turned on.

Link to comment
18 hours ago, rikdegraaff said:

I get when I try to open the rtorrent/rutorrent page the error"Unable to connect".

 

hu? but you said this earlier:-

 

On 8/13/2018 at 6:00 PM, rikdegraaff said:

But now the WebUI is asking for a user/pass.

 

so can you see the web interface or not?, if not then please follow the procedure linked below:-

 

https://lime-technology.com/topic/44108-support-binhex-general/?do=findComment&amp;comment=435831

 

Link to comment

I am having an issue with the latest 2 builds, 0.9.7-1-08 and 0.9.7.-1-09.

 

I have been running and updating this container on a Synology with PIA for some time now without issue (disabling apparmor still).  Last week I updated to the latest version -08 at the time, and my logs indicate a DNS issue.  Today I saw a new version was release, and updated to -09, and the problem persists.   0.9.7-1-07 appears to be working properly at this time.  See errors below.

 

2018-08-15 18:44:56,578 DEBG 'start-script' stdout output:
[info] Adding 209.222.18.222 to /etc/resolv.conf

2018-08-15 18:44:56,586 DEBG 'start-script' stdout output:
[info] Adding 209.222.18.218 to /etc/resolv.conf

2018-08-15 18:44:56,594 DEBG 'start-script' stdout output:
[info] Adding 1.1.1.1 to /etc/resolv.conf

2018-08-15 18:44:56,601 DEBG 'start-script' stdout output:
[info] Adding 9.9.9.9 to /etc/resolv.conf

2018-08-15 18:44:57,514 DEBG 'start-script' stderr output:
random.c:102: fatal error: RUNTIME_CHECK(ret >= 0) failed

2018-08-15 18:44:57,519 DEBG 'start-script' stdout output:
[crit] ca-toronto.privateinternetaccess.com cannot be resolved, possible DNS issues

2018-08-15 18:44:57,520 DEBG fd 10 closed, stopped monitoring <POutputDispatcher at 139872939437808 for <Subprocess at 139872939280288 with name start-script in state RUNNING> (stderr)>
2018-08-15 18:44:57,520 DEBG fd 8 closed, stopped monitoring <POutputDispatcher at 139872939600280 for <Subprocess at 139872939280288 with name start-script in state RUNNING> (stdout)>
2018-08-15 18:44:57,520 INFO exited: start-script (exit status 1; not expected)
2018-08-15 18:44:57,521 DEBG received SIGCLD indicating a child quit

 

Both -08 and -09 exhibit the same behavior, while -07 works perfectly.

 

I have also notice the same exact issue with the sabnzbdvpn container.  Please let me know if you need any additional information.

Link to comment
19 hours ago, binhex said:

 

what makes you think its not connected to PIA?.

 

 

it will do, you have debug turned on.

I turned it on because that's what the FAQ told me to do and post the log.

 

I don't know if it's not connecting to PIA, but it's not downloading/uploading torrents. What's happening is all of my torrents will just stop working completely. Sometimes when I restart the docker they will download for a little bit but eventually they will stop. They will sometimes come back on in the middle of the night when I'm sleeping.

Link to comment
10 hours ago, hammsandwich said:

I am having an issue with the latest 2 builds, 0.9.7-1-08 and 0.9.7.-1-09.

 

I have been running and updating this container on a Synology with PIA for some time now without issue (disabling apparmor still).  Last week I updated to the latest version -08 at the time, and my logs indicate a DNS issue.  Today I saw a new version was release, and updated to -09, and the problem persists.   0.9.7-1-07 appears to be working properly at this time.  See errors below.

 


2018-08-15 18:44:56,578 DEBG 'start-script' stdout output:
[info] Adding 209.222.18.222 to /etc/resolv.conf

2018-08-15 18:44:56,586 DEBG 'start-script' stdout output:
[info] Adding 209.222.18.218 to /etc/resolv.conf

2018-08-15 18:44:56,594 DEBG 'start-script' stdout output:
[info] Adding 1.1.1.1 to /etc/resolv.conf

2018-08-15 18:44:56,601 DEBG 'start-script' stdout output:
[info] Adding 9.9.9.9 to /etc/resolv.conf

2018-08-15 18:44:57,514 DEBG 'start-script' stderr output:
random.c:102: fatal error: RUNTIME_CHECK(ret >= 0) failed

2018-08-15 18:44:57,519 DEBG 'start-script' stdout output:
[crit] ca-toronto.privateinternetaccess.com cannot be resolved, possible DNS issues

2018-08-15 18:44:57,520 DEBG fd 10 closed, stopped monitoring <POutputDispatcher at 139872939437808 for <Subprocess at 139872939280288 with name start-script in state RUNNING> (stderr)>
2018-08-15 18:44:57,520 DEBG fd 8 closed, stopped monitoring <POutputDispatcher at 139872939600280 for <Subprocess at 139872939280288 with name start-script in state RUNNING> (stdout)>
2018-08-15 18:44:57,520 INFO exited: start-script (exit status 1; not expected)
2018-08-15 18:44:57,521 DEBG received SIGCLD indicating a child quit

 

Both -08 and -09 exhibit the same behavior, while -07 works perfectly.

 

I have also notice the same exact issue with the sabnzbdvpn container.  Please let me know if you need any additional information.

 

its a known issue affecting only synology users, synology boxes are unable to execute the command 'dig' in the running container, i can only assume this is due to an out of date kernel in the synology os so not much i can do about it at this point, can you check to see if there are any updates to the synology os, if so please try applying and see if it fixes the issue.

Link to comment
4 hours ago, destrugter said:

I don't know if it's not connecting to PIA, but it's not downloading/uploading torrents.

 

if you can see the web ui then you are connected to pia, this wont be accessible otherwise. your issue is that the endpoint you are connecting to is an ip address, and thus not in the list of endpoints that support port forwarding, thus its skipping port forwarding completely, this is why you are seeing extremely slow speeds. 

 

so the solution is this:-

 

1. switch endpoint to one that does enable port forwarding (recommended solution) - if you want to do this then go here to see the current list of port forward enabled endpoints, then download the ovpn zip pack from here unzip it and place the corresponding port forward enabled endpoint ovpn file in /config/openvpn/ and restart the container.

Link to comment
3 hours ago, binhex said:

 

if you can see the web ui then you are connected to pia, this wont be accessible otherwise. your issue is that the endpoint you are connecting to is an ip address, and thus not in the list of endpoints that support port forwarding, thus its skipping port forwarding completely, this is why you are seeing extremely slow speeds. 

 

so the solution is this:-

 

1. switch endpoint to one that does enable port forwarding (recommended solution) - if you want to do this then go here to see the current list of port forward enabled endpoints, then download the ovpn zip pack from here unzip it and place the corresponding port forward enabled endpoint ovpn file in /config/openvpn/ and restart the container.

 

It doesn't matter which endpoint I choose, the result ends up being the same. Here's a new log from using CA Vancouver. I will note that this docker was working flawlessly until around Monday or so. I'm not sure if I downloaded an update to it. I don't know if that information helps but just wanted to note it in case it does help somehow. These are very well seeded torrents on prolific trackers. To test I had my friend add one to his client and it worked instantly for him.

supervisor.txt

Link to comment
11 minutes ago, destrugter said:

It doesn't matter which endpoint I choose, the result ends up being the same. Here's a new log from using CA Vancouver.

 

ok well that log now shows it has a valid incoming port, which will be a definite step in the right direction,  are you an unraid user?, what are you saving incomplete downloads to, array?, cache?, unassigned device?.

Link to comment
31 minutes ago, binhex said:

 

ok well that log now shows it has a valid incoming port, which will be a definite step in the right direction,  are you an unraid user?, what are you saving incomplete downloads to, array?, cache?, unassigned device?.

 

I'm an unraid user, downloads are saved to a folder on the array

Link to comment

Unraid user

Is it more people with PIA VPN how not get any WebUi after latest update of this container? If I understand other answer in this thread - it's something wrong with the port forward. Deleted the docker and reinstall but cant get the WebUi .

Edited by stormense
Link to comment
Unraid user
Is it more people with PIA VPN how not get any WebUi after latest update of this container? If I understand other answer in this thread - it's something wrong with the port forward. Deleted the docker and reinstall but cant get the WebUi .
Switch to an Endpoint that supports port forwarding or set strict port forwarding to no (not recommended).

Sent from my SM-G935F using Tapatalk

Link to comment

I keep getting the following error when restarting the docker.

 

2018-08-22 11:16:03,661 DEBG 'start-script' stdout output:
[warn] Response code 000 from curl != 2xx
[warn] Exit code 7 from curl != 0
[info] 8 retries left
[info] Retrying in 10 secs.
..

 

I am a PIA user and i connect to the netherlands server which i believe already has port forwarding on it. Is a reinstall required to fix this?

Link to comment
I keep getting the following error when restarting the docker.
 
2018-08-22 11:16:03,661 DEBG 'start-script' stdout output:
[warn] Response code 000 from curl != 2xx
[warn] Exit code 7 from curl != 0
[info] 8 retries left
[info] Retrying in 10 secs...
 
I am a PIA user and i connect to the netherlands server which i believe already has port forwarding on it. Is a reinstall required to fix this?
Netherlands no longer supports port forwarding

Sent from my SM-G935F using Tapatalk

Link to comment
6 minutes ago, binhex said:

Netherlands no longer supports port forwarding

Sent from my SM-G935F using Tapatalk
 

 

Ah thanks for the update. should have checked. cheers

 

Is there any EU server that ppl would recommend now? from what i can see swedish server has best throughput?

Edited by tazire
Link to comment
 
Ah thanks for the update. should have checked. cheers
 
Is there any EU server that ppl would recommend now? from what i can see swedish server has best throughput?
Don't worry about closest, go with fastest

Sent from my SM-G935F using Tapatalk

Link to comment
  • binhex locked this topic
Guest
This topic is now closed to further replies.