Skip to content

boxup/docker-transmission

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Docker - Transmission

Docker Repository on Quay.io

Just a small Docker container running Transmission along with openvpn and Private Internet Access.

Shamelessly steals from the fabulous work done by Scott Hansen:

Repos

quay.io: quay.io/albertrdixon/transmission

docker: albertdixon/transmission

Usage

You must, at minimum:

  • Have a Private Internet Access account and provide your PIA username and password with the ENV vars PIA_USER and PIA_PASS.
  • Run your container with --priviledged or --cap-add=NET_ADMIN
$ docker -d --cap-add=NET_ADMIN -e PIA_USER=username -e PIA_PASS=mypassword -v /storage/tv_shows:/downloads albertdixon/transmission docker-start

Transmission and Openvpn will set their home dirs - where all their configs and things will be - to /transmission and /transmission/openvpn respectively. So, if you want to persist things, just mount a local volume or data container volume to /transmission

You can also place custom config and openvpn files in the mounted volume and they will be respected. Transmission will look for /transmission/settings.json before creating it. Openvpn will look for /transmission/openvpn/pia.ovpn and /transmission/openvpn/pia.crt before creating / copying them.

$ docker -d --cap-add=NET_ADMIN -e PIA_USER=username -e PIA_PASS=mypassword -v /path/to/transmission:/transmission -v /storage/tv_shows:/downloads albertdixon/transmission docker-start

Env Vars

Var Name Default Value Description
PIA_USER none REQUIRED Your PIA login
PIA_PASS none REQUIRED Your PIA password
CACHE_SIZE 50 transmission cahce size in MB
CLEAN_FREQUENCY 1800 time in seconds between runs of torrent_cleaner.py
COMPLETED_SCRIPT /usr/local/bin/completed.sh script to run after torrent completed
COMPLETED_SCRIPT_ENABLED false enable a script to run on torrent completion
CONGESTION lp use this congestion algorithm. Set to '' to use none
DOWNLOAD_DIR /downloads default download directory
DOWNLOAD_QUEUE_ENABLED true enable download queue?
DOWNLOAD_QUEUE_SIZE 3 size of download queue
ENABLE_CLEANER true enable torrent_cleaner.py?
MESSAGE_LEVEL 1 Transmission message level. (0: None, 1: Error, 2: Info, 3: Debug)
OPEN_FILE_LIMIT 32768 open file limit. Make sure you have done appropriate tuning in your host kernel.
OPENVPN_GATEWAY ca-toronto.privateinternetaccess.com PIA gateway server. This should be one with port forwarding enabled. More information
OPENVPN_GATEWAY_PORT 1194 openvpn port. More information
OPENVPN_HOME /transmission/openvpn openvpn home directory
OPENVPN_LOG /dev/stderr openvpn writes logs here
OPENVPN_MUTE 20 openvpn will suppress duplicate messages.
OPENVPN_PROTO udp openvpn protocol. More information
OPENVPN_VERB 3 openvpn logging verbosity. More information
PATH /usr/local/bin:$PATH obvious...
PEER_LIMIT_GLOBAL 1200 global peer limit
PEER_LIMIT_PER_TORRENT 180 peer limit per torrent
PEER_PORT 51234 initial peer port. This gets automatically updated by pia_transmission_monitor.py
QUEUE_STALLED_ENABLED true enable stalled torrent queue?
QUEUE_STALLED_MINUTES 5 place torrent in stalled queue if inactive for this many minutes
RATIO_LIMIT 1 default ratio
RATIO_LIMIT_ENABLED true seed until torrent has reached the ratio limit?
RPC_AUTHENTICATION_REQUIRED false require RPC authentication?
RPC_PASSWORD client RPC password
RPC_PORT 9091 RPC port. If you change this make sure you expose the port.
RPC_USERNAME client RPC password
SEED_QUEUE_ENABLED true enable queue for seeding torrents
SEED_QUEUE_SIZE 2 seed queue size
SPEED_LIMIT_DOWN 5000 download speed limit
SPEED_LIMIT_DOWN_ENABLED false enable download speed limit?
SPEED_LIMIT_UP 400 upload speed limit
SPEED_LIMIT_UP_ENABLED true enable upload speed limit?
SUPERVISOR_LOG_LEVEL INFO log level for supervisord
TRANSMISSION_HOME /transmission transmission home dir
TRANSMISSION_LOG /dev/stderr
TRANSMISSION_WEB_HOME /web custom transmission web interface. Attach your preferred one to this location (default is transmission-web-control). Set this to '' for core transmission UI
UPLOAD_SLOTS_PER_TORRENT 14 upload slots per torrent
WATCH_DIR /torrents watch dir for .torrent files
WATCH_DIR_ENABLED false enable watch dir?

About

Debian docker container running Transmission

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.3%
  • Shell 9.7%