Docker container which runs a headless qBittorrent client with WebUI and optional OpenVPN
Go to file
2018-02-04 19:05:00 -05:00
openvpn Delete openvpn.init 2018-02-04 00:58:35 -05:00
qbittorrent Update qbittorrent.init 2018-02-04 19:05:00 -05:00
docker-compose.yml Update docker-compose.yml 2018-02-02 21:16:39 -05:00
Dockerfile Update Dockerfile 2018-02-03 23:06:19 -05:00
LICENSE initial commit. working, but needs more features 2014-11-09 16:23:18 +01:00
README.md Update README.md 2018-02-03 23:38:02 -05:00

qBittorrent with WebUI and OpenVPN

Docker container which runs a headless qBittorrent client with WebUI while connecting to OpenVPN.

Run container from Docker registry

The container is available from the Docker registry and this is the simplest way to get it. To run the container use this command:

$ docker run --privileged  -d \
              -v /your/config/path/:/config \
              -v /your/downloads/path/:/downloads \
              -e "VPN_ENABLED=yes" \
              -e "LAN_NETWORK=192.168.1.0/24" \
              -e "NAME_SERVERS=8.8.8.8,8.8.4.4" \
              -e "PUID=99" \
              -e "PGID=100" \
              -p 8080:8080 \
              -p 8999:8999 \
              markusmcnugen/qbittorrentvpn

As you can see, the container also expects a downloads volume to be mounted. This is where qBittorrent will store your downloads, incomplete downloads and/or a watch directory for new .torrent files.

Environment Variables

Variable Required Function Example
VPN_ENABLED Yes Enable VPN? (yes|no) Default:yes VPN_ENABLED=yes
LAN_NETWORK Yes Local Network with CIDR notation LAN_NETWORK=192.168.1.0/24
NAME_SERVERS No Comma delimited name servers NAME_SERVERS=8.8.8.8,8.8.4.4
PUID No UID applied to config files and downloads PUID=99
PGID No GID applied to config files and downloads PGID=100

Volumes

Volume Required Function Example
config Yes qBittorrent and OpenVPN config files /your/config/path/:/config
downloads No Default download path for torrents /your/downloads/path/:/downloads

Ports

Port Required Function Example
8080 Yes qBittorrent WebUI 8080:8080
8999 Yes Default download path for torrents VPN_ENABLED=yes

Access the WebUI

Access http://IPADDRESS:8080 from a browser on the same network.

Default Credentials

Credential Default Value
WebUI Username admin
WebUI Password adminadmin

How to use OpenVPN

The container will fail to boot if VPN_ENABLED is set to yes or empty and a .ovpn is not present in the /config/openvpn directory. Drop a .ovpn file from your VPN provider into /config/openvpn and start the container. You may need to edit the ovpn configuration file to load your VPN credentials from a file by setting auth-user-pass.

Example auth-user-pass option

auth-user-pass credentials.conf

Example credentials.conf

username password

PUID/PGID

User ID (PUID) and Group ID (PGID) can be found by issuing the following command for the user you want to run the container as:-

id <username>

Issues

If you are having issues with this container please submit an issue on GitHub. Please provide logs, docker version and other information that can simplify reproducing the issue. Using the latest stable verison of Docker is always recommended. Support for older version is on a best-effort basis.

Building the container yourself

To build this container, clone the repository and cd into it.

Build it:

$ cd /repo/location/qbittorrentvpn
$ docker build -t qbittorrentvpn .

Run it:

$ docker run --privileged  -d \
              -v /your/config/path/:/config \
              -v /your/downloads/path/:/downloads \
              -e "LAN_NETWORK=192.168.1.0/24" \
              -e "NAME_SERVERS=8.8.8.8,8.8.4.4" \
              -e "PUID=99" \
              -e "PGID=100" \
              -p 8080:8080 \
              -p 8999:8999 \
              qbittorrentvpn

This will start a container as described in the "Run container from Docker registry" section.