Use separate container for the RSS plugin
This commit is contained in:
@@ -11,8 +11,6 @@ RUN apt-get update \
|
||||
&& add-apt-repository ppa:transmissionbt/ppa \
|
||||
&& wget -O - https://swupdate.openvpn.net/repos/repo-public.gpg | apt-key add - \
|
||||
&& echo "deb http://build.openvpn.net/debian/openvpn/stable xenial main" > /etc/apt/sources.list.d/openvpn-aptrepo.list \
|
||||
&& apt-get install -y sudo transmission-cli transmission-common transmission-daemon curl rar unrar zip unzip wget gcc make ruby2.3-dev \
|
||||
&& gem install transmission-rss \
|
||||
&& apt-get update \
|
||||
&& apt-get install -y sudo transmission-cli transmission-common transmission-daemon curl rar unrar zip unzip ufw iputils-ping openvpn \
|
||||
&& wget https://github.com/Secretmapper/combustion/archive/release.zip \
|
||||
@@ -34,7 +32,6 @@ ADD transmission/ /etc/transmission/
|
||||
ENV OPENVPN_USERNAME=**None** \
|
||||
OPENVPN_PASSWORD=**None** \
|
||||
OPENVPN_PROVIDER=**None** \
|
||||
RSS_URL=**None** \
|
||||
TRANSMISSION_ALT_SPEED_DOWN=50 \
|
||||
TRANSMISSION_ALT_SPEED_ENABLED=false \
|
||||
TRANSMISSION_ALT_SPEED_TIME_BEGIN=540 \
|
||||
|
@@ -37,3 +37,13 @@ services:
|
||||
- "8080:8080"
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
|
||||
rss:
|
||||
build:
|
||||
context: ./plugins/rss
|
||||
dockerfile: Dockerfile.armhf
|
||||
image: haugene/rpi-transmission-plugin-rss
|
||||
links:
|
||||
- transmission
|
||||
environment:
|
||||
- RSS_URL=http://.../xxxxx.rss
|
||||
|
@@ -30,3 +30,10 @@ services:
|
||||
- 8080:8080
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
|
||||
rss:
|
||||
image: haugene/transmission-rss
|
||||
links:
|
||||
- transmission
|
||||
environment:
|
||||
- RSS_URL=http://.../xxxxx.rss
|
||||
|
16
plugins/rss/Dockerfile
Normal file
16
plugins/rss/Dockerfile
Normal file
@@ -0,0 +1,16 @@
|
||||
FROM ubuntu:16.04
|
||||
MAINTAINER Kristian Haugene
|
||||
|
||||
# Update packages and install software
|
||||
RUN apt-get update \
|
||||
&& apt-get -y upgrade \
|
||||
&& apt-get -y install curl gcc make ruby2.3-dev \
|
||||
&& gem install transmission-rss \
|
||||
&& curl -L https://github.com/jwilder/dockerize/releases/download/v0.5.0/dockerize-linux-amd64-v0.5.0.tar.gz | tar -C /usr/local/bin -xzv
|
||||
|
||||
ADD . /etc/transmission-rss
|
||||
|
||||
ENV TRANSMISSION_DOWNLOAD_DIR=/data/completed \
|
||||
RSS_URL=**None**
|
||||
|
||||
CMD ["/etc/transmission-rss/start.sh"]
|
16
plugins/rss/Dockerfile.armhf
Normal file
16
plugins/rss/Dockerfile.armhf
Normal file
@@ -0,0 +1,16 @@
|
||||
FROM resin/rpi-raspbian:jessie
|
||||
MAINTAINER Kristian Haugene
|
||||
|
||||
# Update packages and install software
|
||||
RUN apt-get update \
|
||||
&& apt-get -y upgrade \
|
||||
&& apt-get -y install curl gcc make ruby2.3-dev \
|
||||
&& gem install transmission-rss \
|
||||
&& curl -L https://github.com/jwilder/dockerize/releases/download/v0.2.0/dockerize-linux-armhf-v0.2.0.tar.gz | tar -C /usr/local/bin -xzv \
|
||||
|
||||
ADD . /etc/transmission-rss
|
||||
|
||||
ENV TRANSMISSION_DOWNLOAD_DIR=/data/completed \
|
||||
RSS_URL=**None**
|
||||
|
||||
CMD ["/etc/transmission-rss/start.sh"]
|
4
plugins/rss/environment-variables.tmpl
Normal file
4
plugins/rss/environment-variables.tmpl
Normal file
@@ -0,0 +1,4 @@
|
||||
#! /bin/sh
|
||||
|
||||
export TRANSMISSION_DOWNLOAD_DIR={{ .Env.TRANSMISSION_DOWNLOAD_DIR }}
|
||||
export RSS_URL="{{ .Env.RSS_URL }}"
|
13
plugins/rss/start.sh
Executable file
13
plugins/rss/start.sh
Executable file
@@ -0,0 +1,13 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Source our persisted env variables from container startup
|
||||
dockerize -template /etc/transmission-rss/environment-variables.tmpl:/etc/transmission-rss/environment-variables.sh
|
||||
. /etc/transmission-rss/environment-variables.sh
|
||||
|
||||
if [ -z "${RSS_URL}" ] || [ "${RSS_URL}" = "**None**" ] ; then
|
||||
echo "NO RSS URL CONFIGURED, IGNORING"
|
||||
else
|
||||
dockerize -template /etc/transmission-rss/transmission-rss.tmpl:/etc/transmission-rss.conf
|
||||
echo "STARTING RSS PLUGIN"
|
||||
transmission-rss
|
||||
fi
|
@@ -2,6 +2,6 @@ feeds:
|
||||
- url: {{ .Env.RSS_URL }}
|
||||
download_path: {{ .Env.TRANSMISSION_DOWNLOAD_DIR }}
|
||||
server:
|
||||
host: 127.0.0.1
|
||||
host: transmission
|
||||
port: 9091
|
||||
rpc_path: /transmission/rpc
|
@@ -73,8 +73,6 @@ export TRANSMISSION_WATCH_DIR_ENABLED={{ .Env.TRANSMISSION_WATCH_DIR_ENABLED }}
|
||||
# Transmission needs to know which VPN provider is used
|
||||
export OPENVPN_PROVIDER={{ .Env.OPENVPN_PROVIDER }}
|
||||
|
||||
export RSS_URL="{{ .Env.RSS_URL }}"
|
||||
|
||||
export ENABLE_UFW={{ .Env.ENABLE_UFW }}
|
||||
export TRANSMISSION_WEB_UI={{ .Env.TRANSMISSION_WEB_UI }}
|
||||
|
||||
|
@@ -18,10 +18,6 @@ if [ "kettu" = "$TRANSMISSION_WEB_UI" ]; then
|
||||
export TRANSMISSION_WEB_HOME=/opt/transmission-ui/kettu
|
||||
fi
|
||||
|
||||
if [ ! -z "${RSS_URL}" ] && [ "${RSS_URL}" != "**None**" ] ; then
|
||||
dockerize -template /etc/transmission/transmission-rss.tmpl:/etc/transmission-rss.conf
|
||||
fi
|
||||
|
||||
echo "Generating transmission settings.json from env variables"
|
||||
# Ensure TRANSMISSION_HOME is created
|
||||
mkdir -p ${TRANSMISSION_HOME}
|
||||
@@ -46,11 +42,4 @@ else
|
||||
echo "NO PORT UPDATER FOR THIS PROVIDER"
|
||||
fi
|
||||
|
||||
if [ -z "${RSS_URL}" ] || [ "${RSS_URL}" = "**None**" ] ; then
|
||||
echo "NO RSS URL CONFIGURED, IGNORING"
|
||||
else
|
||||
echo "STARTING RSS PLUGIN"
|
||||
transmission-rss
|
||||
fi
|
||||
|
||||
echo "Transmission startup script complete."
|
||||
|
Reference in New Issue
Block a user