Added transmission settings to env vars. Fixed #8. Updated readme. Added ability to override /etc/resolv.conf. Fixes #4. Save docker image size by combining all apt commands into a single RUN statement.master
@@ -7,22 +7,14 @@ MAINTAINER Kristian Haugene | |||
VOLUME /data | |||
# Update package sources list | |||
RUN apt-get update | |||
# Add transmission ppa repository for latest releases | |||
RUN apt-get -y install software-properties-common | |||
RUN add-apt-repository ppa:transmissionbt/ppa | |||
# Update packages and install software | |||
RUN apt-get update | |||
RUN apt-get install -y transmission-cli | |||
RUN apt-get install -y transmission-common | |||
RUN apt-get install -y transmission-daemon | |||
RUN apt-get install -y openvpn | |||
RUN apt-get install -y curl | |||
VOLUME /config | |||
RUN apt-get update \ | |||
&& apt-get -y install software-properties-common \ | |||
&& add-apt-repository ppa:transmissionbt/ppa \ | |||
&& apt-get update \ | |||
&& apt-get install -y transmission-cli transmission-common transmission-daemon openvpn curl \ | |||
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ | |||
&& curl -L https://github.com/jwilder/dockerize/releases/download/v0.0.2/dockerize-linux-amd64-v0.0.2.tar.gz | tar -C /usr/local/bin -xzv | |||
# Add configuration and scripts | |||
ADD piaconfig/* /etc/openvpn/ | |||
@@ -36,9 +28,81 @@ ADD transmission/runUpdates.sh /etc/transmission-daemon/startPortUpdates.sh | |||
ADD transmission/down.sh /etc/transmission-daemon/stop.sh | |||
ADD runOpenVpn.sh /etc/openvpn/start.sh | |||
ENV PIA_USERNAME=**None** \ | |||
PIA_PASSWORD=**None** \ | |||
"TRANSMISSION_ALT_SPEED_DOWN=50" \ | |||
"TRANSMISSION_ALT_SPEED_ENABLED=false" \ | |||
"TRANSMISSION_ALT_SPEED_TIME_BEGIN=540" \ | |||
"TRANSMISSION_ALT_SPEED_TIME_DAY=127" \ | |||
"TRANSMISSION_ALT_SPEED_TIME_ENABLED=false" \ | |||
"TRANSMISSION_ALT_SPEED_TIME_END=1020" \ | |||
"TRANSMISSION_ALT_SPEED_UP=50" \ | |||
"TRANSMISSION_BIND_ADDRESS_IPV4=0.0.0.0" \ | |||
"TRANSMISSION_BIND_ADDRESS_IPV6=::" \ | |||
"TRANSMISSION_BLOCKLIST_ENABLED=false" \ | |||
"TRANSMISSION_BLOCKLIST_URL=http://www.example.com/blocklist" \ | |||
"TRANSMISSION_CACHE_SIZE_MB=4" \ | |||
"TRANSMISSION_DHT_ENABLED=true" \ | |||
"TRANSMISSION_DOWNLOAD_DIR=/data/completed" \ | |||
"TRANSMISSION_DOWNLOAD_LIMIT=100" \ | |||
"TRANSMISSION_DOWNLOAD_LIMIT_ENABLED=0" \ | |||
"TRANSMISSION_DOWNLOAD_QUEUE_ENABLED=true" \ | |||
"TRANSMISSION_DOWNLOAD_QUEUE_SIZE=5" \ | |||
"TRANSMISSION_ENCRYPTION=1" \ | |||
"TRANSMISSION_IDLE_SEEDING_LIMIT=30" \ | |||
"TRANSMISSION_IDLE_SEEDING_LIMIT_ENABLED=false" \ | |||
"TRANSMISSION_INCOMPLETE_DIR=/data/incomplete" \ | |||
"TRANSMISSION_INCOMPLETE_DIR_ENABLED=true" \ | |||
"TRANSMISSION_LPD_ENABLED=false" \ | |||
"TRANSMISSION_MAX_PEERS_GLOBAL=200" \ | |||
"TRANSMISSION_MESSAGE_LEVEL=2" \ | |||
"TRANSMISSION_PEER_CONGESTION_ALGORITHM=" \ | |||
"TRANSMISSION_PEER_ID_TTL_HOURS=6" \ | |||
"TRANSMISSION_PEER_LIMIT_GLOBAL=200" \ | |||
"TRANSMISSION_PEER_LIMIT_PER_TORRENT=50" \ | |||
"TRANSMISSION_PEER_PORT=51413" \ | |||
"TRANSMISSION_PEER_PORT_RANDOM_HIGH=65535" \ | |||
"TRANSMISSION_PEER_PORT_RANDOM_LOW=49152" \ | |||
"TRANSMISSION_PEER_PORT_RANDOM_ON_START=false" \ | |||
"TRANSMISSION_PEER_SOCKET_TOS=default" \ | |||
"TRANSMISSION_PEX_ENABLED=true" \ | |||
"TRANSMISSION_PORT_FORWARDING_ENABLED=false" \ | |||
"TRANSMISSION_PREALLOCATION=1" \ | |||
"TRANSMISSION_PREFETCH_ENABLED=1" \ | |||
"TRANSMISSION_QUEUE_STALLED_ENABLED=true" \ | |||
"TRANSMISSION_QUEUE_STALLED_MINUTES=30" \ | |||
"TRANSMISSION_RATIO_LIMIT=2" \ | |||
"TRANSMISSION_RATIO_LIMIT_ENABLED=false" \ | |||
"TRANSMISSION_RENAME_PARTIAL_FILES=true" \ | |||
"TRANSMISSION_RPC_AUTHENTICATION_REQUIRED=false" \ | |||
"TRANSMISSION_RPC_BIND_ADDRESS=0.0.0.0" \ | |||
"TRANSMISSION_RPC_ENABLED=true" \ | |||
"TRANSMISSION_RPC_PASSWORD={425745bf3914984c2abcc013276f40e8fa5d84ecC5.df8oF" \ | |||
"TRANSMISSION_RPC_PORT=9091" \ | |||
"TRANSMISSION_RPC_URL=/transmission/" \ | |||
"TRANSMISSION_RPC_USERNAME=username" \ | |||
"TRANSMISSION_RPC_WHITELIST=127.0.0.1" \ | |||
"TRANSMISSION_RPC_WHITELIST_ENABLED=false" \ | |||
"TRANSMISSION_SCRAPE_PAUSED_TORRENTS_ENABLED=true" \ | |||
"TRANSMISSION_SCRIPT_TORRENT_DONE_ENABLED=false" \ | |||
"TRANSMISSION_SCRIPT_TORRENT_DONE_FILENAME=" \ | |||
"TRANSMISSION_SEED_QUEUE_ENABLED=false" \ | |||
"TRANSMISSION_SEED_QUEUE_SIZE=10" \ | |||
"TRANSMISSION_SPEED_LIMIT_DOWN=100" \ | |||
"TRANSMISSION_SPEED_LIMIT_DOWN_ENABLED=false" \ | |||
"TRANSMISSION_SPEED_LIMIT_UP=100" \ | |||
"TRANSMISSION_SPEED_LIMIT_UP_ENABLED=false" \ | |||
"TRANSMISSION_START_ADDED_TORRENTS=true" \ | |||
"TRANSMISSION_TRASH_ORIGINAL_TORRENT_FILES=false" \ | |||
"TRANSMISSION_UMASK=2" \ | |||
"TRANSMISSION_UPLOAD_LIMIT=100" \ | |||
"TRANSMISSION_UPLOAD_LIMIT_ENABLED=0" \ | |||
"TRANSMISSION_UPLOAD_SLOTS_PER_TORRENT=14" \ | |||
"TRANSMISSION_UTP_ENABLED=true" \ | |||
"TRANSMISSION_WATCH_DIR=/data/watch" \ | |||
"TRANSMISSION_WATCH_DIR_ENABLED=true" \ | |||
RESOLV_OVERRIDE=**None** | |||
# Expose port and run. Use baseimage-docker's init system | |||
EXPOSE 9091 | |||
CMD ["/etc/openvpn/start.sh"] | |||
# Clean up APT when done. | |||
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* |
@@ -8,26 +8,55 @@ The container is available from the Docker registry and this is the simplest way | |||
``` | |||
$ docker run --privileged -d \ | |||
-v /your/storage/path/:/data \ | |||
-v /your/config/path/:/config \ | |||
-e "PIA_USERNAME=user" \ | |||
-e "PIA_PASSWORD=pass" \ | |||
-p 9091:9091 \ | |||
haugene/transmission-openvpn | |||
``` | |||
or you could optionally specify which vpn server to use by setting an environment variable to one of the ovpn configs avaliable in <a href="https://github.com/haugene/docker-transmission-openvpn/tree/master/piaconfig">this folder</a>. | |||
or you could optionally specify which vpn server to use by setting an environment variable to one of the ovpn configs avaliable [in this folder](https://github.com/haugene/docker-transmission-openvpn/tree/master/piaconfig). | |||
``` | |||
$ docker run --privileged -d \ | |||
-v /your/storage/path/:/data \ | |||
-v /your/config/path/:/config \ | |||
-e "PIA_USERNAME=user" \ | |||
-e "PIA_PASSWORD=pass" \ | |||
-p 9091:9091 \ | |||
-e "OPEN_VPN_CONFIG=US West" \ | |||
haugene/transmission-openvpn | |||
``` | |||
As you can see, the container expects two volumes to be mounted. One is used for storing your downloads from Transmission, and the other provides configurations. The container comes with a default Transmission settings.json file that expects the folders "completed, incomplete and watch" to be present in /your/storage/path (aka /data). This is where Transmission will store your downloads, incomplete downloads and a watch directory to look for new .torrent files. | |||
As you can see, the container expects a data volume to be mounted. It is used for storing your downloads from Transmission. The container comes with a default Transmission `settings.json` file that expects the folders `completed`, `incomplete`, and `watch` to be present in /your/storage/path (aka /data). This is where Transmission will store your downloads, incomplete downloads and a watch directory to look for new .torrent files. | |||
The only mandatory configuration is a pia-credentials.txt file that needs to be put in /your/config/path/ directory. In the file you supply your username and password for Private Internet Access VPN connections. The file should have two lines; your username on line 1 and your password on line 2. The container will connect to the Private Internet Access VPN servers in Netherlands by default. | |||
The only mandatory configuration is to set two environment variables for your PIA username and password. You must set the environment variables `PIA_USERNAME` and `PIA_PASSWORD` to your login credentials. The container will connect to the Private Internet Access VPN servers in Netherlands by default. | |||
NB: Instructions on how to use your own Transmission settings, and how to connect to the WebUI, is further down in the README. | |||
## Required environment options | |||
| Variable | Function | Example | | |||
|----------|----------|-------| | |||
|`PIA_USERNAME`|Your login username for PIA|`PIA_USERNAME=asdf`| | |||
|`PIA_PASSWORD`|Your login password for PIA|`PIA_PASSWORD=asdf`| | |||
## Network configuration options | |||
| Variable | Function | Example | | |||
|----------|----------|-------| | |||
|`OPEN_VPN_CONFIG` | Sets the PIA endpoint to connect to. | `OPEN_VPN_CONFIG=UK Southampton`| | |||
|`RESOLV_OVERRIDE` | The value of this variable will be written to `/etc/resolv.conf`. | `RESOLV_OVERRIDE=nameserver 8.8.8.8\nnameserver 8.8.4.4\n`| | |||
## Transmission configuration options | |||
You may override transmission options by setting the appropriate environment variable. | |||
The environment variables are the same name as used in the transmission settings.json file and follow the format given in these examples: | |||
| Transmission variable name | Environment variable name | | |||
|----------------------------|---------------------------| | |||
| `speed-limit-up` | `TRANSMISSION_SPEED_LIMIT_UP` | | |||
| `speed-limit-up-enabled` | `TRANSMISSION_SPEED_LIMIT_UP_ENABLED` | | |||
| `ratio-limit` | `TRANSMISSION_RATIO_LIMIT` | | |||
| `ratio-limit-enabled` | `TRANSMISSION_RATIO_LIMIT_ENABLED` | | |||
As you can see the variables are prefixed with `TRANSMISSION_`, the variable is capitalized, and `-` is converted to `_`. | |||
# Building the container yourself | |||
To build this container, clone the repository and cd into it. | |||
@@ -40,7 +69,8 @@ $ docker build -t="docker-transmission-openvpn" . | |||
``` | |||
$ docker run --privileged -d \ | |||
-v /your/storage/path/:/data \ | |||
-v /your/config/path/:/config \ | |||
-e "PIA_USERNAME=user" \ | |||
-e "PIA_PASSWORD=pass" \ | |||
-p 9091:9091 \ | |||
docker-transmission-openvpn | |||
``` |
@@ -5,14 +5,37 @@ then | |||
if [ -f /etc/openvpn/"${OPEN_VPN_CONFIG}".ovpn ] | |||
then | |||
echo "Starting OpenVPN using config ${OPEN_VPN_CONFIG}.ovpn" | |||
exec openvpn --config /etc/openvpn/"${OPEN_VPN_CONFIG}".ovpn | |||
OPEN_VPN_CONFIG=/etc/openvpn/${OPEN_VPN_CONFIG}.ovpn | |||
else | |||
echo "Supplied config ${OPEN_VPN_CONFIG}.ovpn could not be found." | |||
echo "Using default OpenVPN gateway: Netherlands" | |||
exec openvpn --config /etc/openvpn/Netherlands.ovpn | |||
OPEN_VPN_CONFIG=/etc/openvpn/Netherlands.ovpn | |||
fi | |||
else | |||
echo "No VPN configuration provided. Using default: Netherlands" | |||
exec openvpn --config /etc/openvpn/Netherlands.ovpn | |||
OPEN_VPN_CONFIG=/etc/openvpn/Netherlands.ovpn | |||
fi | |||
# override resolv.conf | |||
if [ "$RESOLV_OVERRIDE" != "**None**" ]; | |||
then | |||
echo "Overriding resolv.conf..." | |||
printf "$RESOLV_OVERRIDE" > /etc/resolv.conf | |||
fi | |||
# add PIA user/pass | |||
if [ "$PIA_USERNAME" != "**None**" ]; | |||
then | |||
echo "Setting PIA credentials..." | |||
mkdir -p /config | |||
echo $PIA_USERNAME > /config/pia-credentials.txt | |||
echo $PIA_PASSWORD >> /config/pia-credentials.txt | |||
else | |||
echo "Not setting PIA credentials." | |||
fi | |||
dockerize \ | |||
-template /etc/transmission-daemon/settings.json:/etc/transmission-daemon/settings.json \ | |||
true | |||
exec openvpn --config "$OPEN_VPN_CONFIG" |
@@ -1,74 +1,74 @@ | |||
{ | |||
"alt-speed-down": 50, | |||
"alt-speed-enabled": false, | |||
"alt-speed-time-begin": 540, | |||
"alt-speed-time-day": 127, | |||
"alt-speed-time-enabled": false, | |||
"alt-speed-time-end": 1020, | |||
"alt-speed-up": 50, | |||
"bind-address-ipv4": "0.0.0.0", | |||
"bind-address-ipv6": "::", | |||
"blocklist-enabled": false, | |||
"blocklist-url": "http://www.example.com/blocklist", | |||
"cache-size-mb": 4, | |||
"dht-enabled": true, | |||
"download-dir": "/data/completed", | |||
"download-limit": 100, | |||
"download-limit-enabled": 0, | |||
"download-queue-enabled": true, | |||
"download-queue-size": 5, | |||
"encryption": 1, | |||
"idle-seeding-limit": 30, | |||
"idle-seeding-limit-enabled": false, | |||
"incomplete-dir": "/data/incomplete", | |||
"incomplete-dir-enabled": true, | |||
"lpd-enabled": false, | |||
"max-peers-global": 200, | |||
"message-level": 2, | |||
"peer-congestion-algorithm": "", | |||
"peer-id-ttl-hours": 6, | |||
"peer-limit-global": 200, | |||
"peer-limit-per-torrent": 50, | |||
"peer-port": 51413, | |||
"peer-port-random-high": 65535, | |||
"peer-port-random-low": 49152, | |||
"peer-port-random-on-start": false, | |||
"peer-socket-tos": "default", | |||
"pex-enabled": true, | |||
"port-forwarding-enabled": false, | |||
"preallocation": 1, | |||
"prefetch-enabled": 1, | |||
"queue-stalled-enabled": true, | |||
"queue-stalled-minutes": 30, | |||
"ratio-limit": 2, | |||
"ratio-limit-enabled": false, | |||
"rename-partial-files": true, | |||
"rpc-authentication-required": false, | |||
"rpc-bind-address": "0.0.0.0", | |||
"rpc-enabled": true, | |||
"rpc-password": "{425745bf3914984c2abcc013276f40e8fa5d84ecC5.df8oF", | |||
"rpc-port": 9091, | |||
"rpc-url": "/transmission/", | |||
"rpc-username": "username", | |||
"rpc-whitelist": "127.0.0.1", | |||
"rpc-whitelist-enabled": false, | |||
"scrape-paused-torrents-enabled": true, | |||
"script-torrent-done-enabled": false, | |||
"script-torrent-done-filename": "", | |||
"seed-queue-enabled": false, | |||
"seed-queue-size": 10, | |||
"speed-limit-down": 100, | |||
"speed-limit-down-enabled": false, | |||
"speed-limit-up": 100, | |||
"speed-limit-up-enabled": false, | |||
"start-added-torrents": true, | |||
"trash-original-torrent-files": false, | |||
"umask": 2, | |||
"upload-limit": 100, | |||
"upload-limit-enabled": 0, | |||
"upload-slots-per-torrent": 14, | |||
"utp-enabled": true, | |||
"watch-dir": "/data/watch", | |||
"watch-dir-enabled": true | |||
"alt-speed-down": {{ .Env.TRANSMISSION_ALT_SPEED_DOWN }}, | |||
"alt-speed-enabled": {{ .Env.TRANSMISSION_ALT_SPEED_ENABLED }}, | |||
"alt-speed-time-begin": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_BEGIN }}, | |||
"alt-speed-time-day": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_DAY }}, | |||
"alt-speed-time-enabled": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_ENABLED }}, | |||
"alt-speed-time-end": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_END }}, | |||
"alt-speed-up": {{ .Env.TRANSMISSION_ALT_SPEED_UP }}, | |||
"bind-address-ipv4": "{{ .Env.TRANSMISSION_BIND_ADDRESS_IPV4 }}", | |||
"bind-address-ipv6": "{{ .Env.TRANSMISSION_BIND_ADDRESS_IPV6 }}", | |||
"blocklist-enabled": {{ .Env.TRANSMISSION_BLOCKLIST_ENABLED }}, | |||
"blocklist-url": "{{ .Env.TRANSMISSION_BLOCKLIST_URL }}", | |||
"cache-size-mb": {{ .Env.TRANSMISSION_CACHE_SIZE_MB }}, | |||
"dht-enabled": {{ .Env.TRANSMISSION_DHT_ENABLED }}, | |||
"download-dir": "{{ .Env.TRANSMISSION_DOWNLOAD_DIR }}", | |||
"download-limit": {{ .Env.TRANSMISSION_DOWNLOAD_LIMIT }}, | |||
"download-limit-enabled": {{ .Env.TRANSMISSION_DOWNLOAD_LIMIT_ENABLED }}, | |||
"download-queue-enabled": {{ .Env.TRANSMISSION_DOWNLOAD_QUEUE_ENABLED }}, | |||
"download-queue-size": {{ .Env.TRANSMISSION_DOWNLOAD_QUEUE_SIZE }}, | |||
"encryption": {{ .Env.TRANSMISSION_ENCRYPTION }}, | |||
"idle-seeding-limit": {{ .Env.TRANSMISSION_IDLE_SEEDING_LIMIT }}, | |||
"idle-seeding-limit-enabled": {{ .Env.TRANSMISSION_IDLE_SEEDING_LIMIT_ENABLED }}, | |||
"incomplete-dir": "{{ .Env.TRANSMISSION_INCOMPLETE_DIR }}", | |||
"incomplete-dir-enabled": {{ .Env.TRANSMISSION_INCOMPLETE_DIR_ENABLED }}, | |||
"lpd-enabled": {{ .Env.TRANSMISSION_LPD_ENABLED }}, | |||
"max-peers-global": {{ .Env.TRANSMISSION_MAX_PEERS_GLOBAL }}, | |||
"message-level": {{ .Env.TRANSMISSION_MESSAGE_LEVEL }}, | |||
"peer-congestion-algorithm": "{{ .Env.TRANSMISSION_PEER_CONGESTION_ALGORITHM }}", | |||
"peer-id-ttl-hours": {{ .Env.TRANSMISSION_PEER_ID_TTL_HOURS }}, | |||
"peer-limit-global": {{ .Env.TRANSMISSION_PEER_LIMIT_GLOBAL }}, | |||
"peer-limit-per-torrent": {{ .Env.TRANSMISSION_PEER_LIMIT_PER_TORRENT }}, | |||
"peer-port": {{ .Env.TRANSMISSION_PEER_PORT }}, | |||
"peer-port-random-high": {{ .Env.TRANSMISSION_PEER_PORT_RANDOM_HIGH }}, | |||
"peer-port-random-low": {{ .Env.TRANSMISSION_PEER_PORT_RANDOM_LOW }}, | |||
"peer-port-random-on-start": {{ .Env.TRANSMISSION_PEER_PORT_RANDOM_ON_START }}, | |||
"peer-socket-tos": "{{ .Env.TRANSMISSION_PEER_SOCKET_TOS }}", | |||
"pex-enabled": {{ .Env.TRANSMISSION_PEX_ENABLED }}, | |||
"port-forwarding-enabled": {{ .Env.TRANSMISSION_PORT_FORWARDING_ENABLED }}, | |||
"preallocation": {{ .Env.TRANSMISSION_PREALLOCATION }}, | |||
"prefetch-enabled": {{ .Env.TRANSMISSION_PREFETCH_ENABLED }}, | |||
"queue-stalled-enabled": {{ .Env.TRANSMISSION_QUEUE_STALLED_ENABLED }}, | |||
"queue-stalled-minutes": {{ .Env.TRANSMISSION_QUEUE_STALLED_MINUTES }}, | |||
"ratio-limit": {{ .Env.TRANSMISSION_RATIO_LIMIT }}, | |||
"ratio-limit-enabled": {{ .Env.TRANSMISSION_RATIO_LIMIT_ENABLED }}, | |||
"rename-partial-files": {{ .Env.TRANSMISSION_RENAME_PARTIAL_FILES }}, | |||
"rpc-authentication-required": {{ .Env.TRANSMISSION_RPC_AUTHENTICATION_REQUIRED }}, | |||
"rpc-bind-address": "{{ .Env.TRANSMISSION_RPC_BIND_ADDRESS }}", | |||
"rpc-enabled": {{ .Env.TRANSMISSION_RPC_ENABLED }}, | |||
"rpc-password": "{{ .Env.TRANSMISSION_RPC_PASSWORD }}", | |||
"rpc-port": {{ .Env.TRANSMISSION_RPC_PORT }}, | |||
"rpc-url": "{{ .Env.TRANSMISSION_RPC_URL }}", | |||
"rpc-username": "{{ .Env.TRANSMISSION_RPC_USERNAME }}", | |||
"rpc-whitelist": "{{ .Env.TRANSMISSION_RPC_WHITELIST }}", | |||
"rpc-whitelist-enabled": {{ .Env.TRANSMISSION_RPC_WHITELIST_ENABLED }}, | |||
"scrape-paused-torrents-enabled": {{ .Env.TRANSMISSION_SCRAPE_PAUSED_TORRENTS_ENABLED }}, | |||
"script-torrent-done-enabled": {{ .Env.TRANSMISSION_SCRIPT_TORRENT_DONE_ENABLED }}, | |||
"script-torrent-done-filename": "{{ .Env.TRANSMISSION_SCRIPT_TORRENT_DONE_FILENAME }}", | |||
"seed-queue-enabled": {{ .Env.TRANSMISSION_SEED_QUEUE_ENABLED }}, | |||
"seed-queue-size": {{ .Env.TRANSMISSION_SEED_QUEUE_SIZE }}, | |||
"speed-limit-down": {{ .Env.TRANSMISSION_SPEED_LIMIT_DOWN }}, | |||
"speed-limit-down-enabled": {{ .Env.TRANSMISSION_SPEED_LIMIT_DOWN_ENABLED }}, | |||
"speed-limit-up": {{ .Env.TRANSMISSION_SPEED_LIMIT_UP }}, | |||
"speed-limit-up-enabled": {{ .Env.TRANSMISSION_SPEED_LIMIT_UP_ENABLED }}, | |||
"start-added-torrents": {{ .Env.TRANSMISSION_START_ADDED_TORRENTS }}, | |||
"trash-original-torrent-files": {{ .Env.TRANSMISSION_TRASH_ORIGINAL_TORRENT_FILES }}, | |||
"umask": {{ .Env.TRANSMISSION_UMASK }}, | |||
"upload-limit": {{ .Env.TRANSMISSION_UPLOAD_LIMIT }}, | |||
"upload-limit-enabled": {{ .Env.TRANSMISSION_UPLOAD_LIMIT_ENABLED }}, | |||
"upload-slots-per-torrent": {{ .Env.TRANSMISSION_UPLOAD_SLOTS_PER_TORRENT }}, | |||
"utp-enabled": {{ .Env.TRANSMISSION_UTP_ENABLED }}, | |||
"watch-dir": "{{ .Env.TRANSMISSION_WATCH_DIR }}", | |||
"watch-dir-enabled": {{ .Env.TRANSMISSION_WATCH_DIR_ENABLED }} | |||
} | |||