feat(web-ui): add transmission-web-control UImaster
&& wget https://github.com/Secretmapper/combustion/archive/release.zip \ | && wget https://github.com/Secretmapper/combustion/archive/release.zip \ | ||||
&& unzip release.zip -d /opt/transmission-ui/ \ | && unzip release.zip -d /opt/transmission-ui/ \ | ||||
&& rm release.zip \ | && rm release.zip \ | ||||
&& wget https://github.com/ronggang/twc-release/raw/master/src.tar.gz \ | |||||
&& mkdir /opt/transmission-ui/transmission-web-control \ | |||||
&& tar -xvf src.tar.gz -C /opt/transmission-ui/transmission-web-control/ \ | |||||
&& rm src.tar.gz \ | |||||
&& git clone git://github.com/endor/kettu.git /opt/transmission-ui/kettu \ | && git clone git://github.com/endor/kettu.git /opt/transmission-ui/kettu \ | ||||
&& apt-get install -y tinyproxy telnet \ | && apt-get install -y tinyproxy telnet \ | ||||
&& wget https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64.deb \ | && wget https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64.deb \ |
&& echo "Install kettu" \ | && echo "Install kettu" \ | ||||
&& wget -qO- https://github.com/endor/kettu/archive/master.tar.gz | tar xz -C /opt/transmission-ui \ | && wget -qO- https://github.com/endor/kettu/archive/master.tar.gz | tar xz -C /opt/transmission-ui \ | ||||
&& mv /opt/transmission-ui/kettu-master /opt/transmission-ui/kettu \ | && mv /opt/transmission-ui/kettu-master /opt/transmission-ui/kettu \ | ||||
&& echo "Install Transmission-Web-Control" \ | |||||
&& mkdir /opt/transmission-ui/transmission-web-control | |||||
&& wget -q0- https://github.com/ronggang/twc-release/raw/master/src.tar.gz | tar xz -C /opt/transmission-ui/transmission-web-control \ | |||||
&& rm -rf /tmp/* /var/tmp/* \ | && rm -rf /tmp/* /var/tmp/* \ | ||||
&& groupmod -g 1000 users \ | && groupmod -g 1000 users \ | ||||
&& useradd -u 911 -U -d /config -s /bin/false abc \ | && useradd -u 911 -U -d /config -s /bin/false abc \ |
&& unzip release.zip -d /opt/transmission-ui/ \ | && unzip release.zip -d /opt/transmission-ui/ \ | ||||
&& rm release.zip \ | && rm release.zip \ | ||||
&& git clone git://github.com/endor/kettu.git /opt/transmission-ui/kettu \ | && git clone git://github.com/endor/kettu.git /opt/transmission-ui/kettu \ | ||||
&& wget https://github.com/ronggang/twc-release/raw/master/src.tar.gz \ | |||||
&& mkdir /opt/transmission-ui/transmission-web-control \ | |||||
&& tar -xvf src.tar.gz -C /opt/transmission-ui/transmission-web-control/ \ | |||||
&& rm src.tar.gz \ | |||||
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ | && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ | ||||
&& curl -L https://github.com/jwilder/dockerize/releases/download/v0.6.0/dockerize-linux-armhf-v0.6.0.tar.gz | tar -C /usr/local/bin -xzv \ | && curl -L https://github.com/jwilder/dockerize/releases/download/v0.6.0/dockerize-linux-armhf-v0.6.0.tar.gz | tar -C /usr/local/bin -xzv \ | ||||
&& groupmod -g 1000 users \ | && groupmod -g 1000 users \ |
### Alternative web UIs | ### Alternative web UIs | ||||
You can override the default web UI by setting the ```TRANSMISSION_WEB_HOME``` environment variable. If set, Transmission will look there for the Web Interface files, such as the javascript, html, and graphics files. | You can override the default web UI by setting the ```TRANSMISSION_WEB_HOME``` environment variable. If set, Transmission will look there for the Web Interface files, such as the javascript, html, and graphics files. | ||||
[Combustion UI](https://github.com/Secretmapper/combustion) and [Kettu](https://github.com/endor/kettu) come bundled with the container. You can enable either of them by setting```TRANSMISSION_WEB_UI=combustion``` or ```TRANSMISSION_WEB_UI=kettu```, respectively. Note that this will override the ```TRANSMISSION_WEB_HOME``` variable if set. | |||||
[Combustion UI](https://github.com/Secretmapper/combustion), [Kettu](https://github.com/endor/kettu) and [Transmission-Web-Control](https://github.com/ronggang/transmission-web-control/) come bundled with the container. You can enable either of them by setting```TRANSMISSION_WEB_UI=combustion```, ```TRANSMISSION_WEB_UI=kettu``` or ```TRANSMISSION_WEB_UI=transmission-web-control```, respectively. Note that this will override the ```TRANSMISSION_WEB_HOME``` variable if set. | |||||
| Variable | Function | Example | | | Variable | Function | Example | | ||||
|----------|----------|-------| | |----------|----------|-------| | ||||
|`TRANSMISSION_WEB_HOME` | Set Transmission web home | `TRANSMISSION_WEB_HOME=/path/to/web/ui`| | |`TRANSMISSION_WEB_HOME` | Set Transmission web home | `TRANSMISSION_WEB_HOME=/path/to/web/ui`| | ||||
|`TRANSMISSION_WEB_UI` | Use the specified bundled web UI | `TRANSMISSION_WEB_UI=combustion` or `TRANSMISSION_WEB_UI=kettu`| | |||||
|`TRANSMISSION_WEB_UI` | Use the specified bundled web UI | `TRANSMISSION_WEB_UI=combustion`, `TRANSMISSION_WEB_UI=kettu` or `TRANSMISSION_WEB_UI=transmission-web-control`| | |||||
### Transmission configuration options | ### Transmission configuration options | ||||
The Transmission RSS plugin can optionally be run as a separate container. It allow to download torrents based on an RSS URL, see [Plugin page](https://github.com/nning/transmission-rss). | The Transmission RSS plugin can optionally be run as a separate container. It allow to download torrents based on an RSS URL, see [Plugin page](https://github.com/nning/transmission-rss). | ||||
``` | ``` | ||||
$ docker run -d -e "RSS_URL=http://.../xxxxx.rss" \ | |||||
--link <transmission-container>:transmission \--link | |||||
$ docker run -d \ | |||||
-e "RSS_URL=<URL>" \ | |||||
--link <transmission-container>:transmission \ | |||||
--name "transmission-rss" \ | |||||
haugene/transmission-rss | |||||
``` | ``` | ||||
#### Use docker env file | #### Use docker env file |
export TRANSMISSION_WEB_HOME=/opt/transmission-ui/kettu | export TRANSMISSION_WEB_HOME=/opt/transmission-ui/kettu | ||||
fi | fi | ||||
if [ "transmission-web-control" = "$TRANSMISSION_WEB_UI" ]; then | |||||
echo "Using Transmission Web Control UI, overriding TRANSMISSION_WEB_HOME" | |||||
export TRANSMISSION_WEB_HOME=/opt/transmission-ui/transmission-web-control | |||||
fi | |||||
echo "Generating transmission settings.json from env variables" | echo "Generating transmission settings.json from env variables" | ||||
# Ensure TRANSMISSION_HOME is created | # Ensure TRANSMISSION_HOME is created | ||||
mkdir -p ${TRANSMISSION_HOME} | mkdir -p ${TRANSMISSION_HOME} |