Update readme and bump version
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# Transmission and OpenVPN
|
# Transmission and OpenVPN
|
||||||
#
|
#
|
||||||
# Version 1.13
|
# Version 1.14
|
||||||
|
|
||||||
FROM ubuntu:14.04
|
FROM ubuntu:14.04
|
||||||
MAINTAINER Kristian Haugene
|
MAINTAINER Kristian Haugene
|
||||||
|
97
README.md
97
README.md
@@ -1,30 +1,33 @@
|
|||||||
# Transmission with WebUI and OpenVPN
|
# Transmission with WebUI and OpenVPN
|
||||||
Docker container which runs Transmission torrent client with WebUI while connecting to OpenVPN.
|
Docker container which runs Transmission torrent client with WebUI while connecting to OpenVPN.
|
||||||
It bundles certificates and configurations for the following VPN providers:
|
It bundles certificates and configurations for the following VPN providers:
|
||||||
* Anonine
|
|
||||||
* BTGuard
|
| Provider Name | Config Value |
|
||||||
* Cryptostorm
|
|:-----------------------------|:-------------|
|
||||||
* FrootVPN
|
| Anonine | `ANONINE` |
|
||||||
* FrostVPN
|
| BTGuard | `BTGUARD` |
|
||||||
* HideMe
|
| Cryptostorm | `CRYPTOSTORM` |
|
||||||
* HideMyAss
|
| FrootVPN | `FROOT` |
|
||||||
* IntegrityVPN
|
| FrostVPN | `FROSTVPN` |
|
||||||
* IPVanish
|
| HideMe | `HIDEME` |
|
||||||
* Ivacy
|
| HideMyAss | `HIDEMYASS` |
|
||||||
* IVPN
|
| IntegrityVPN | `INTEGRITYVPN` |
|
||||||
* Newshosting
|
| IPVanish | `IPVANISH` |
|
||||||
* NordVPN
|
| Ivacy | `IVACY` |
|
||||||
* OVPN
|
| IVPN | `IVPN` |
|
||||||
* Private Internet Access
|
| Newshosting | `NEWSHOSTING` |
|
||||||
* PrivateVPN
|
| NordVPN | `NORDVPN` |
|
||||||
* PureVPN
|
| OVPN | `OVPN` |
|
||||||
* SlickVPN
|
| Private Internet Access | `PIA` |
|
||||||
* SmartVPN
|
| PrivateVPN | `PRIVATEVPN` |
|
||||||
* TigerVPN
|
| PureVPN | `PUREVPN` |
|
||||||
* TorGuard
|
| SlickVPN | `SLICKVPN` |
|
||||||
* UsenetServerVPN
|
| SmartVPN | `SMARTVPN` |
|
||||||
* Windscribe
|
| TigerVPN | `TIGER` |
|
||||||
* VPN.ht
|
| TorGuard | `TORGUARD` |
|
||||||
|
| UsenetServerVPN | `USENETSERVER` |
|
||||||
|
| Windscribe | `WINDSCRIBE` |
|
||||||
|
| VPN.ht | `VPNHT` |
|
||||||
|
|
||||||
When using PIA as provider it will update Transmission hourly with assigned open port. Please read the instructions below.
|
When using PIA as provider it will update Transmission hourly with assigned open port. Please read the instructions below.
|
||||||
|
|
||||||
@@ -57,7 +60,7 @@ By default a folder named transmission-home will also be created under /data, th
|
|||||||
### Required environment options
|
### Required environment options
|
||||||
| Variable | Function | Example |
|
| Variable | Function | Example |
|
||||||
|----------|----------|-------|
|
|----------|----------|-------|
|
||||||
|`OPENVPN_PROVIDER` | Sets the OpenVPN provider to use. | `OPENVPN_PROVIDER=provider`. Supported providers are `PIA`, `BTGUARD`, `TIGER`, `FROOT`, `TORGUARD`, `NEWSHOSTING`, `NORDVPN`, `USENETSERVER`, `INTEGRITYVPN`, `IPVANISH`, `ANONINE`, `HIDEME`, `PUREVPN`, `HIDEMYASS`, `PRIVATEVPN`, `IVPN`, `OVPN`, `SLICKVPN`, `SMARTVPN`,`IVACY`, `CRYPTOSTORM` and `WINDSCRIBE`|
|
|`OPENVPN_PROVIDER` | Sets the OpenVPN provider to use. | `OPENVPN_PROVIDER=provider`. Supported providers and their config values are listed in the table above. |
|
||||||
|`OPENVPN_USERNAME`|Your OpenVPN username |`OPENVPN_USERNAME=asdf`|
|
|`OPENVPN_USERNAME`|Your OpenVPN username |`OPENVPN_USERNAME=asdf`|
|
||||||
|`OPENVPN_PASSWORD`|Your OpenVPN password |`OPENVPN_PASSWORD=asdf`|
|
|`OPENVPN_PASSWORD`|Your OpenVPN password |`OPENVPN_PASSWORD=asdf`|
|
||||||
|
|
||||||
@@ -121,12 +124,9 @@ This is because the VPN is active, and since docker is running in a different ip
|
|||||||
to your request will be treated as "non-local" traffic and therefore be routed out through the VPN interface.
|
to your request will be treated as "non-local" traffic and therefore be routed out through the VPN interface.
|
||||||
|
|
||||||
### How to fix this
|
### How to fix this
|
||||||
There are several ways to fix this. The container supports the `LOCAL_NETWORK` environment variable. For instance if your local network uses the IP range 192.168.0.0/24 you would pass `-e LOCAL_NETWORK=192.168.0.0/24`. Alternatively just proxy the traffic.
|
The container supports the `LOCAL_NETWORK` environment variable. For instance if your local network uses the IP range 192.168.0.0/24 you would pass `-e LOCAL_NETWORK=192.168.0.0/24`.
|
||||||
|
|
||||||
#### Use preconfigured image
|
Alternatively you can reverse proxy the traffic through another container, as that container would be in the docker range. There is a reverse proxy being built with the container. You can run it using the command below or have a look in the repository proxy folder for inspiration for your own custom proxy.
|
||||||
You can use the proxy image haugene/transmission-openvpn-proxy that comes with a config that is configurable through environment variables.
|
|
||||||
|
|
||||||
Start it like this:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
$ docker run -d \
|
$ docker run -d \
|
||||||
@@ -134,21 +134,6 @@ $ docker run -d \
|
|||||||
-p 8080:8080 \
|
-p 8080:8080 \
|
||||||
haugene/transmission-openvpn-proxy
|
haugene/transmission-openvpn-proxy
|
||||||
```
|
```
|
||||||
You can change to bind another port on your host by changing it to `-p 9090:8080` etc.
|
|
||||||
|
|
||||||
#### Use a custom proxy config
|
|
||||||
|
|
||||||
If you want to run the proxy with your own configuration you can do that by doing something like this.
|
|
||||||
|
|
||||||
```
|
|
||||||
$ docker run -d \
|
|
||||||
-v /path/to/your/nginx.conf:/etc/nginx/nginx.conf:ro \
|
|
||||||
-p 8080:8080 \
|
|
||||||
nginx
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Finally
|
|
||||||
Based on the examples above, Transmission WebUI should now be avaliable at "your.host.ip.addr:8080/transmission/web/". See the docker-compose.yml file for an example on how to run the two containers using compose.
|
|
||||||
|
|
||||||
## Known issues, tips and tricks
|
## Known issues, tips and tricks
|
||||||
|
|
||||||
@@ -191,28 +176,6 @@ Then you can set `OPENVPN_PROVIDER=CUSTOM`and the container will use the config
|
|||||||
|
|
||||||
Note that you still need to modify your .ovpn file as described in the previous section. If you have an separate ca.crt file your volume mount should be a folder containing both the ca.crt and the .ovpn config.
|
Note that you still need to modify your .ovpn file as described in the previous section. If you have an separate ca.crt file your volume mount should be a folder containing both the ca.crt and the .ovpn config.
|
||||||
|
|
||||||
## Building the container yourself
|
|
||||||
To build this container, clone the repository and cd into it.
|
|
||||||
|
|
||||||
### Build it:
|
|
||||||
```
|
|
||||||
$ cd /repo/location/docker-transmission-openvpn
|
|
||||||
$ docker build -t transmission-openvpn .
|
|
||||||
```
|
|
||||||
### Run it:
|
|
||||||
```
|
|
||||||
$ docker run --privileged -d \
|
|
||||||
-v /your/storage/path/:/data \
|
|
||||||
-e "OPENVPN_PROVIDER=PIA" \
|
|
||||||
-e "OPENVPN_CONFIG=Netherlands" \
|
|
||||||
-e "OPENVPN_USERNAME=user" \
|
|
||||||
-e "OPENVPN_PASSWORD=pass" \
|
|
||||||
-p 9091:9091 \
|
|
||||||
transmission-openvpn
|
|
||||||
```
|
|
||||||
|
|
||||||
This will start a container as described in the "Run container from Docker registry" section.
|
|
||||||
|
|
||||||
## Controlling Transmission remotely
|
## Controlling Transmission remotely
|
||||||
The container exposes /config as a volume. This is the directory where the supplied transmission and OpenVPN credentials will be stored.
|
The container exposes /config as a volume. This is the directory where the supplied transmission and OpenVPN credentials will be stored.
|
||||||
If you have transmission authentication enabled and want scripts in another container to access and
|
If you have transmission authentication enabled and want scripts in another container to access and
|
||||||
|
Reference in New Issue
Block a user