mirror of
https://github.com/MarkusMcNugen/docker-qBittorrentvpn
synced 2024-12-28 03:51:40 +00:00
persist env variables on startup. conform to /bin/sh
This commit is contained in:
parent
0d918b22f9
commit
8a3a0b30e9
@ -27,6 +27,7 @@ ADD transmission/periodicUpdates.sh /etc/transmission-daemon/periodicUpdates.sh
|
|||||||
ADD transmission/start.sh /etc/transmission-daemon/start.sh
|
ADD transmission/start.sh /etc/transmission-daemon/start.sh
|
||||||
ADD transmission/runUpdates.sh /etc/transmission-daemon/startPortUpdates.sh
|
ADD transmission/runUpdates.sh /etc/transmission-daemon/startPortUpdates.sh
|
||||||
ADD transmission/down.sh /etc/transmission-daemon/stop.sh
|
ADD transmission/down.sh /etc/transmission-daemon/stop.sh
|
||||||
|
ADD transmission/environment-variables.tmpl /etc/transmission-daemon/environment-variables.tmpl
|
||||||
ADD start.sh /etc/openvpn/start.sh
|
ADD start.sh /etc/openvpn/start.sh
|
||||||
|
|
||||||
ENV PIA_USERNAME=**None** \
|
ENV PIA_USERNAME=**None** \
|
||||||
@ -38,6 +39,7 @@ ENV PIA_USERNAME=**None** \
|
|||||||
"TRANSMISSION_ALT_SPEED_TIME_ENABLED=false" \
|
"TRANSMISSION_ALT_SPEED_TIME_ENABLED=false" \
|
||||||
"TRANSMISSION_ALT_SPEED_TIME_END=1020" \
|
"TRANSMISSION_ALT_SPEED_TIME_END=1020" \
|
||||||
"TRANSMISSION_ALT_SPEED_UP=50" \
|
"TRANSMISSION_ALT_SPEED_UP=50" \
|
||||||
|
"TRANSMISSION_BIND_ADDRESS_IPV4=0.0.0.0" \
|
||||||
"TRANSMISSION_BIND_ADDRESS_IPV6=::" \
|
"TRANSMISSION_BIND_ADDRESS_IPV6=::" \
|
||||||
"TRANSMISSION_BLOCKLIST_ENABLED=false" \
|
"TRANSMISSION_BLOCKLIST_ENABLED=false" \
|
||||||
"TRANSMISSION_BLOCKLIST_URL=http://www.example.com/blocklist" \
|
"TRANSMISSION_BLOCKLIST_URL=http://www.example.com/blocklist" \
|
||||||
|
3
start.sh
3
start.sh
@ -38,4 +38,7 @@ fi
|
|||||||
echo $TRANSMISSION_RPC_USERNAME > /config/transmission-credentials.txt
|
echo $TRANSMISSION_RPC_USERNAME > /config/transmission-credentials.txt
|
||||||
echo $TRANSMISSION_RPC_PASSWORD >> /config/transmission-credentials.txt
|
echo $TRANSMISSION_RPC_PASSWORD >> /config/transmission-credentials.txt
|
||||||
|
|
||||||
|
# Persist transmission settings for use by transmission-daemon
|
||||||
|
dockerize -template /etc/transmission-daemon/environment-variables.tmpl:/etc/transmission-daemon/environment-variables.sh /bin/true
|
||||||
|
|
||||||
exec openvpn --config "$OPEN_VPN_CONFIG"
|
exec openvpn --config "$OPEN_VPN_CONFIG"
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
"alt-speed-time-enabled": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_ENABLED }},
|
"alt-speed-time-enabled": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_ENABLED }},
|
||||||
"alt-speed-time-end": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_END }},
|
"alt-speed-time-end": {{ .Env.TRANSMISSION_ALT_SPEED_TIME_END }},
|
||||||
"alt-speed-up": {{ .Env.TRANSMISSION_ALT_SPEED_UP }},
|
"alt-speed-up": {{ .Env.TRANSMISSION_ALT_SPEED_UP }},
|
||||||
"bind-address-ipv4": "!!BINDIPV4!!",
|
"bind-address-ipv4": "{{ .Env.TRANSMISSION_BIND_ADDRESS_IPV4 }}",
|
||||||
"bind-address-ipv6": "{{ .Env.TRANSMISSION_BIND_ADDRESS_IPV6 }}",
|
"bind-address-ipv6": "{{ .Env.TRANSMISSION_BIND_ADDRESS_IPV6 }}",
|
||||||
"blocklist-enabled": {{ .Env.TRANSMISSION_BLOCKLIST_ENABLED }},
|
"blocklist-enabled": {{ .Env.TRANSMISSION_BLOCKLIST_ENABLED }},
|
||||||
"blocklist-url": "{{ .Env.TRANSMISSION_BLOCKLIST_URL }}",
|
"blocklist-url": "{{ .Env.TRANSMISSION_BLOCKLIST_URL }}",
|
||||||
|
74
transmission/environment-variables.tmpl
Normal file
74
transmission/environment-variables.tmpl
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
export TRANSMISSION_ALT_SPEED_DOWN={{ .Env.TRANSMISSION_ALT_SPEED_DOWN }}
|
||||||
|
export TRANSMISSION_ALT_SPEED_ENABLED={{ .Env.TRANSMISSION_ALT_SPEED_ENABLED }}
|
||||||
|
export TRANSMISSION_ALT_SPEED_TIME_BEGIN={{ .Env.TRANSMISSION_ALT_SPEED_TIME_BEGIN }}
|
||||||
|
export TRANSMISSION_ALT_SPEED_TIME_DAY={{ .Env.TRANSMISSION_ALT_SPEED_TIME_DAY }}
|
||||||
|
export TRANSMISSION_ALT_SPEED_TIME_ENABLED={{ .Env.TRANSMISSION_ALT_SPEED_TIME_ENABLED }}
|
||||||
|
export TRANSMISSION_ALT_SPEED_TIME_END={{ .Env.TRANSMISSION_ALT_SPEED_TIME_END }}
|
||||||
|
export TRANSMISSION_ALT_SPEED_UP={{ .Env.TRANSMISSION_ALT_SPEED_UP }}
|
||||||
|
export TRANSMISSION_BIND_ADDRESS_IPV4={{ .Env.TRANSMISSION_BIND_ADDRESS_IPV4 }}
|
||||||
|
export TRANSMISSION_BIND_ADDRESS_IPV6={{ .Env.TRANSMISSION_BIND_ADDRESS_IPV6 }}
|
||||||
|
export TRANSMISSION_BLOCKLIST_ENABLED={{ .Env.TRANSMISSION_BLOCKLIST_ENABLED }}
|
||||||
|
export TRANSMISSION_BLOCKLIST_URL={{ .Env.TRANSMISSION_BLOCKLIST_URL }}
|
||||||
|
export TRANSMISSION_CACHE_SIZE_MB={{ .Env.TRANSMISSION_CACHE_SIZE_MB }}
|
||||||
|
export TRANSMISSION_DHT_ENABLED={{ .Env.TRANSMISSION_DHT_ENABLED }}
|
||||||
|
export TRANSMISSION_DOWNLOAD_DIR={{ .Env.TRANSMISSION_DOWNLOAD_DIR }}
|
||||||
|
export TRANSMISSION_DOWNLOAD_LIMIT={{ .Env.TRANSMISSION_DOWNLOAD_LIMIT }}
|
||||||
|
export TRANSMISSION_DOWNLOAD_LIMIT_ENABLED={{ .Env.TRANSMISSION_DOWNLOAD_LIMIT_ENABLED }}
|
||||||
|
export TRANSMISSION_DOWNLOAD_QUEUE_ENABLED={{ .Env.TRANSMISSION_DOWNLOAD_QUEUE_ENABLED }}
|
||||||
|
export TRANSMISSION_DOWNLOAD_QUEUE_SIZE={{ .Env.TRANSMISSION_DOWNLOAD_QUEUE_SIZE }}
|
||||||
|
export TRANSMISSION_ENCRYPTION={{ .Env.TRANSMISSION_ENCRYPTION }}
|
||||||
|
export TRANSMISSION_IDLE_SEEDING_LIMIT={{ .Env.TRANSMISSION_IDLE_SEEDING_LIMIT }}
|
||||||
|
export TRANSMISSION_IDLE_SEEDING_LIMIT_ENABLED={{ .Env.TRANSMISSION_IDLE_SEEDING_LIMIT_ENABLED }}
|
||||||
|
export TRANSMISSION_INCOMPLETE_DIR={{ .Env.TRANSMISSION_INCOMPLETE_DIR }}
|
||||||
|
export TRANSMISSION_INCOMPLETE_DIR_ENABLED={{ .Env.TRANSMISSION_INCOMPLETE_DIR_ENABLED }}
|
||||||
|
export TRANSMISSION_LPD_ENABLED={{ .Env.TRANSMISSION_LPD_ENABLED }}
|
||||||
|
export TRANSMISSION_MAX_PEERS_GLOBAL={{ .Env.TRANSMISSION_MAX_PEERS_GLOBAL }}
|
||||||
|
export TRANSMISSION_MESSAGE_LEVEL={{ .Env.TRANSMISSION_MESSAGE_LEVEL }}
|
||||||
|
export TRANSMISSION_PEER_CONGESTION_ALGORITHM={{ .Env.TRANSMISSION_PEER_CONGESTION_ALGORITHM }}
|
||||||
|
export TRANSMISSION_PEER_ID_TTL_HOURS={{ .Env.TRANSMISSION_PEER_ID_TTL_HOURS }}
|
||||||
|
export TRANSMISSION_PEER_LIMIT_GLOBAL={{ .Env.TRANSMISSION_PEER_LIMIT_GLOBAL }}
|
||||||
|
export TRANSMISSION_PEER_LIMIT_PER_TORRENT={{ .Env.TRANSMISSION_PEER_LIMIT_PER_TORRENT }}
|
||||||
|
export TRANSMISSION_PEER_PORT={{ .Env.TRANSMISSION_PEER_PORT }}
|
||||||
|
export TRANSMISSION_PEER_PORT_RANDOM_HIGH={{ .Env.TRANSMISSION_PEER_PORT_RANDOM_HIGH }}
|
||||||
|
export TRANSMISSION_PEER_PORT_RANDOM_LOW={{ .Env.TRANSMISSION_PEER_PORT_RANDOM_LOW }}
|
||||||
|
export TRANSMISSION_PEER_PORT_RANDOM_ON_START={{ .Env.TRANSMISSION_PEER_PORT_RANDOM_ON_START }}
|
||||||
|
export TRANSMISSION_PEER_SOCKET_TOS={{ .Env.TRANSMISSION_PEER_SOCKET_TOS }}
|
||||||
|
export TRANSMISSION_PEX_ENABLED={{ .Env.TRANSMISSION_PEX_ENABLED }}
|
||||||
|
export TRANSMISSION_PORT_FORWARDING_ENABLED={{ .Env.TRANSMISSION_PORT_FORWARDING_ENABLED }}
|
||||||
|
export TRANSMISSION_PREALLOCATION={{ .Env.TRANSMISSION_PREALLOCATION }}
|
||||||
|
export TRANSMISSION_PREFETCH_ENABLED={{ .Env.TRANSMISSION_PREFETCH_ENABLED }}
|
||||||
|
export TRANSMISSION_QUEUE_STALLED_ENABLED={{ .Env.TRANSMISSION_QUEUE_STALLED_ENABLED }}
|
||||||
|
export TRANSMISSION_QUEUE_STALLED_MINUTES={{ .Env.TRANSMISSION_QUEUE_STALLED_MINUTES }}
|
||||||
|
export TRANSMISSION_RATIO_LIMIT={{ .Env.TRANSMISSION_RATIO_LIMIT }}
|
||||||
|
export TRANSMISSION_RATIO_LIMIT_ENABLED={{ .Env.TRANSMISSION_RATIO_LIMIT_ENABLED }}
|
||||||
|
export TRANSMISSION_RENAME_PARTIAL_FILES={{ .Env.TRANSMISSION_RENAME_PARTIAL_FILES }}
|
||||||
|
export TRANSMISSION_RPC_AUTHENTICATION_REQUIRED={{ .Env.TRANSMISSION_RPC_AUTHENTICATION_REQUIRED }}
|
||||||
|
export TRANSMISSION_RPC_BIND_ADDRESS={{ .Env.TRANSMISSION_RPC_BIND_ADDRESS }}
|
||||||
|
export TRANSMISSION_RPC_ENABLED={{ .Env.TRANSMISSION_RPC_ENABLED }}
|
||||||
|
export TRANSMISSION_RPC_PASSWORD={{ .Env.TRANSMISSION_RPC_PASSWORD }}
|
||||||
|
export TRANSMISSION_RPC_PORT={{ .Env.TRANSMISSION_RPC_PORT }}
|
||||||
|
export TRANSMISSION_RPC_URL={{ .Env.TRANSMISSION_RPC_URL }}
|
||||||
|
export TRANSMISSION_RPC_USERNAME={{ .Env.TRANSMISSION_RPC_USERNAME }}
|
||||||
|
export TRANSMISSION_RPC_WHITELIST={{ .Env.TRANSMISSION_RPC_WHITELIST }}
|
||||||
|
export TRANSMISSION_RPC_WHITELIST_ENABLED={{ .Env.TRANSMISSION_RPC_WHITELIST_ENABLED }}
|
||||||
|
export TRANSMISSION_SCRAPE_PAUSED_TORRENTS_ENABLED={{ .Env.TRANSMISSION_SCRAPE_PAUSED_TORRENTS_ENABLED }}
|
||||||
|
export TRANSMISSION_SCRIPT_TORRENT_DONE_ENABLED={{ .Env.TRANSMISSION_SCRIPT_TORRENT_DONE_ENABLED }}
|
||||||
|
export TRANSMISSION_SCRIPT_TORRENT_DONE_FILENAME={{ .Env.TRANSMISSION_SCRIPT_TORRENT_DONE_FILENAME }}
|
||||||
|
export TRANSMISSION_SEED_QUEUE_ENABLED={{ .Env.TRANSMISSION_SEED_QUEUE_ENABLED }}
|
||||||
|
export TRANSMISSION_SEED_QUEUE_SIZE={{ .Env.TRANSMISSION_SEED_QUEUE_SIZE }}
|
||||||
|
export TRANSMISSION_SPEED_LIMIT_DOWN={{ .Env.TRANSMISSION_SPEED_LIMIT_DOWN }}
|
||||||
|
export TRANSMISSION_SPEED_LIMIT_DOWN_ENABLED={{ .Env.TRANSMISSION_SPEED_LIMIT_DOWN_ENABLED }}
|
||||||
|
export TRANSMISSION_SPEED_LIMIT_UP={{ .Env.TRANSMISSION_SPEED_LIMIT_UP }}
|
||||||
|
export TRANSMISSION_SPEED_LIMIT_UP_ENABLED={{ .Env.TRANSMISSION_SPEED_LIMIT_UP_ENABLED }}
|
||||||
|
export TRANSMISSION_START_ADDED_TORRENTS={{ .Env.TRANSMISSION_START_ADDED_TORRENTS }}
|
||||||
|
export TRANSMISSION_TRASH_ORIGINAL_TORRENT_FILES={{ .Env.TRANSMISSION_TRASH_ORIGINAL_TORRENT_FILES }}
|
||||||
|
export TRANSMISSION_UMASK={{ .Env.TRANSMISSION_UMASK }}
|
||||||
|
export TRANSMISSION_UPLOAD_LIMIT={{ .Env.TRANSMISSION_UPLOAD_LIMIT }}
|
||||||
|
export TRANSMISSION_UPLOAD_LIMIT_ENABLED={{ .Env.TRANSMISSION_UPLOAD_LIMIT_ENABLED }}
|
||||||
|
export TRANSMISSION_UPLOAD_SLOTS_PER_TORRENT={{ .Env.TRANSMISSION_UPLOAD_SLOTS_PER_TORRENT }}
|
||||||
|
export TRANSMISSION_UTP_ENABLED={{ .Env.TRANSMISSION_UTP_ENABLED }}
|
||||||
|
export TRANSMISSION_WATCH_DIR={{ .Env.TRANSMISSION_WATCH_DIR }}
|
||||||
|
export TRANSMISSION_WATCH_DIR_ENABLED={{ .Env.TRANSMISSION_WATCH_DIR_ENABLED }}
|
||||||
|
|
@ -1,5 +1,8 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Source our persisted env variables from container startup
|
||||||
|
. /etc/transmission-daemon/environment-variables.sh
|
||||||
|
|
||||||
tun0ip=$(ifconfig tun0 | sed -n '2 p' | awk '{print $2}' | cut -d: -f2)
|
tun0ip=$(ifconfig tun0 | sed -n '2 p' | awk '{print $2}' | cut -d: -f2)
|
||||||
echo "Updating TRANSMISSION_BIND_ADDRESS_IPV4 to tun0 ip: ${tun0ip}"
|
echo "Updating TRANSMISSION_BIND_ADDRESS_IPV4 to tun0 ip: ${tun0ip}"
|
||||||
export TRANSMISSION_BIND_ADDRESS_IPV4=${tun0ip}
|
export TRANSMISSION_BIND_ADDRESS_IPV4=${tun0ip}
|
||||||
|
@ -22,7 +22,7 @@ new_client_id() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pia_client_id="$(cat $pia_client_id_file 2>/dev/null)"
|
pia_client_id="$(cat $pia_client_id_file 2>/dev/null)"
|
||||||
if [[ -z "$pia_client_id" ]]; then
|
if [ -z ${pia_client_id} ]; then
|
||||||
echo "Generating new client id for PIA"
|
echo "Generating new client id for PIA"
|
||||||
pia_client_id=$(new_client_id)
|
pia_client_id=$(new_client_id)
|
||||||
fi
|
fi
|
||||||
@ -39,7 +39,7 @@ echo "Got new port $new_port from pia"
|
|||||||
|
|
||||||
# Check if transmission remote is set up with authentication
|
# Check if transmission remote is set up with authentication
|
||||||
auth_enabled=$(grep 'rpc-authentication-required\"' $transmission_settings_file | grep -oE 'true|false')
|
auth_enabled=$(grep 'rpc-authentication-required\"' $transmission_settings_file | grep -oE 'true|false')
|
||||||
if [[ "true" = "$auth_enabled" ]]
|
if [ "true" = "$auth_enabled" ]
|
||||||
then
|
then
|
||||||
echo "transmission auth required"
|
echo "transmission auth required"
|
||||||
myauth="--auth $transmission_username:$transmission_passwd"
|
myauth="--auth $transmission_username:$transmission_passwd"
|
||||||
@ -50,7 +50,7 @@ fi
|
|||||||
|
|
||||||
# get current listening port
|
# get current listening port
|
||||||
transmission_peer_port=$(transmission-remote $myauth -si | grep Listenport | grep -oE '[0-9]+')
|
transmission_peer_port=$(transmission-remote $myauth -si | grep Listenport | grep -oE '[0-9]+')
|
||||||
if [[ "$new_port" != "$transmission_peer_port" ]]
|
if [ "$new_port" != "$transmission_peer_port" ]
|
||||||
then
|
then
|
||||||
transmission-remote $myauth -p "$new_port"
|
transmission-remote $myauth -p "$new_port"
|
||||||
echo "Checking port..."
|
echo "Checking port..."
|
||||||
|
Loading…
Reference in New Issue
Block a user