Public Repository

Last pushed: a year ago
Short Description
Variant of haugene/transmission-openvpn which sets some of my personal preferences.
Full Description

Docker container which runs Transmission torrent client with WebUI while connecting to OpenVPN. The torrent client will only run if the OpenVPN connection is up.

Supported OpenVPN providers and more information can be found here: haugene/docker-transmission

Highlights

  • Uploads/Downloads effectively paused during the day
  • Force encryption
  • Download/upload speeds/slots capped to prevent network saturation

Required environment options

  • OPENVPN_PROVIDER: Sets the OpenVPN provider to use
  • OPENVPN_USERNAME: Your OpenVPN username
  • OPENVPN_PASSWORD: Your OpenVPN password
  • OPENVPN_CONFIG: Sets the OpenVPN endpoint to connect to
  • TRANSMISSION_RPC_USERNAME: Username for WebUI
  • TRANSMISSION_RPC_PASSWORD: Password for WebUI

Preconfigured environment options

  • TRANSMISSION_DOWNLOAD_DIR=/data/Complete
  • TRANSMISSION_INCOMPLETE_DIR_ENABLED=true
  • TRANSMISSION_WATCH_DIR_ENABLED=true
  • TRANSMISSION_INCOMPLETE_DIR=/data/Incomplete
  • TRANSMISSION_WATCH_DIR=/data/Torrents
  • TRANSMISSION_ALT_SPEED_ENABLED=true
  • TRANSMISSION_ALT_SPEED_UP=1
  • TRANSMISSION_ALT_SPEED_DOWN=1
  • TRANSMISSION_ALT_SPEED_TIME_DAY=127
  • TRANSMISSION_ALT_SPEED_TIME_ENABLED=true
  • TRANSMISSION_ALT_SPEED_TIME_BEGIN=720
  • TRANSMISSION_ALT_SPEED_TIME_END=360
  • TRANSMISSION_BIND_ADDRESS_IPV4=0.0.0.0
  • TRANSMISSION_BIND_ADDRESS_IPV6=::
  • TRANSMISSION_DOWNLOAD_LIMIT=100
  • TRANSMISSION_DOWNLOAD_LIMIT_ENABLED=false
  • TRANSMISSION_UPLOAD_LIMIT=100
  • TRANSMISSION_UPLOAD_LIMIT_ENABLED=false
  • TRANSMISSION_DOWNLOAD_QUEUE_ENABLED=true
  • TRANSMISSION_DOWNLOAD_QUEUE_SIZE=3
  • TRANSMISSION_ENCRYPTION=2
  • TRANSMISSION_IDLE_SEEDING_LIMIT=0
  • TRANSMISSION_IDLE_SEEDING_LIMIT_ENABLED=true
  • TRANSMISSION_MAX_PEERS_GLOBAL=200
  • TRANSMISSION_PEER_LIMIT_GLOBAL=200
  • TRANSMISSION_PEER_LIMIT_PER_TORRENT=100
  • TRANSMISSION_PEER_PORT_RANDOM_HIGH=65535
  • TRANSMISSION_PEER_PORT_RANDOM_LOW=49152
  • TRANSMISSION_PEER_PORT_RANDOM_ON_START=true
  • TRANSMISSION_QUEUE_STALLED_ENABLED=true
  • TRANSMISSION_QUEUE_STALLED_MINUTES=30
  • TRANSMISSION_RATIO_LIMIT=1
  • TRANSMISSION_RATIO_LIMIT_ENABLED=true

Docker for Windows / PowerShell Example:

This will:

  • Run this repo
  • Map the volume to a host directory
  • Expose the port on the host so you can access it at http://<hostip>:9091/transmission/web

Note: In Docker for Windows, you must first share the drive (in this case the E drive) in order to mount the volume to the host.

PS C:\> docker run --privileged -d --name=transmission-openvpn `
    -e "OPENVPN_USERNAME=<username>" `
    -e "OPENVPN_PASSWORD=<password>" `
    -e "OPENVPN_PROVIDER=<provider>" `
    -e "OPENVPN_CONFIG=<config_name>" `
    -e "TRANSMISSION_RPC_USERNAME=<user>" `
    -e "TRANSMISSION_RPC_PASSWORD=<pass>" `
    -v e:/Downloads:/data `
    -p 9091:9091 `
    agourley/transmission-openvpn
Docker Pull Command
Owner
agourley