Skip to content

Commit cde2d19

Browse files
authored
Merge pull request #69 from thelamer/master
Rebase to Alpine 3.9, add themes to baseimage, add python and findutil
2 parents c19cc1b + f740cde commit cde2d19

File tree

7 files changed

+102
-16
lines changed

7 files changed

+102
-16
lines changed

Dockerfile

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM lsiobase/alpine:3.8
1+
FROM lsiobase/alpine:3.9
22

33
# set version label
44
ARG BUILD_DATE
@@ -10,15 +10,40 @@ RUN \
1010
echo "**** install packages ****" && \
1111
apk add --no-cache \
1212
curl \
13+
findutils \
1314
jq \
1415
openssl \
1516
p7zip \
17+
python \
1618
rsync \
1719
tar \
1820
transmission-cli \
1921
transmission-daemon \
2022
unrar \
21-
unzip
23+
unzip && \
24+
echo "**** install third party themes ****" && \
25+
curl -o \
26+
/tmp/combustion.zip -L \
27+
"https://github.com/Secretmapper/combustion/archive/release.zip" && \
28+
unzip \
29+
/tmp/combustion.zip -d \
30+
/ && \
31+
mkdir -p /tmp/twctemp && \
32+
TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \
33+
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
34+
curl -o \
35+
/tmp/twc.tar.gz -L \
36+
"https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \
37+
tar xf \
38+
/tmp/twc.tar.gz -C \
39+
/tmp/twctemp --strip-components=1 && \
40+
mv /tmp/twctemp/src /transmission-web-control && \
41+
echo "**** cleanup ****" && \
42+
rm -rf \
43+
/tmp/*
44+
45+
46+
2247

2348
# copy local files
2449
COPY root/ /

Dockerfile.aarch64

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM lsiobase/alpine.arm64:3.8
1+
FROM lsiobase/alpine.arm64:3.9
22

33
# Add qemu to build on x86_64 systems
44
COPY qemu-aarch64-static /usr/bin
@@ -13,15 +13,40 @@ RUN \
1313
echo "**** install packages ****" && \
1414
apk add --no-cache \
1515
curl \
16+
findutils \
1617
jq \
1718
openssl \
1819
p7zip \
20+
python \
1921
rsync \
2022
tar \
2123
transmission-cli \
2224
transmission-daemon \
2325
unrar \
24-
unzip
26+
unzip && \
27+
echo "**** install third party themes ****" && \
28+
curl -o \
29+
/tmp/combustion.zip -L \
30+
"https://github.com/Secretmapper/combustion/archive/release.zip" && \
31+
unzip \
32+
/tmp/combustion.zip -d \
33+
/ && \
34+
mkdir -p /tmp/twctemp && \
35+
TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \
36+
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
37+
curl -o \
38+
/tmp/twc.tar.gz -L \
39+
"https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \
40+
tar xf \
41+
/tmp/twc.tar.gz -C \
42+
/tmp/twctemp --strip-components=1 && \
43+
mv /tmp/twctemp/src /transmission-web-control && \
44+
echo "**** cleanup ****" && \
45+
rm -rf \
46+
/tmp/*
47+
48+
49+
2550

2651
# copy local files
2752
COPY root/ /

Dockerfile.armhf

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM lsiobase/alpine.armhf:3.8
1+
FROM lsiobase/alpine.armhf:3.9
22

33
# Add qemu to build on x86_64 systems
44
COPY qemu-arm-static /usr/bin
@@ -13,15 +13,40 @@ RUN \
1313
echo "**** install packages ****" && \
1414
apk add --no-cache \
1515
curl \
16+
findutils \
1617
jq \
1718
openssl \
1819
p7zip \
20+
python \
1921
rsync \
2022
tar \
2123
transmission-cli \
2224
transmission-daemon \
2325
unrar \
24-
unzip
26+
unzip && \
27+
echo "**** install third party themes ****" && \
28+
curl -o \
29+
/tmp/combustion.zip -L \
30+
"https://github.com/Secretmapper/combustion/archive/release.zip" && \
31+
unzip \
32+
/tmp/combustion.zip -d \
33+
/ && \
34+
mkdir -p /tmp/twctemp && \
35+
TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \
36+
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
37+
curl -o \
38+
/tmp/twc.tar.gz -L \
39+
"https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \
40+
tar xf \
41+
/tmp/twc.tar.gz -C \
42+
/tmp/twctemp --strip-components=1 && \
43+
mv /tmp/twctemp/src /transmission-web-control && \
44+
echo "**** cleanup ****" && \
45+
rm -rf \
46+
/tmp/*
47+
48+
49+
2550

2651
# copy local files
2752
COPY root/ /

Jenkinsfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ pipeline {
9696
steps{
9797
script{
9898
env.EXT_RELEASE = sh(
99-
script: ''' curl -s http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/ |awk -F '(transmission-cli-|.apk)' '/transmission-cli.*.apk/ {print $2}' ''',
99+
script: ''' curl -s http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/ |awk -F '(transmission-cli-|.apk)' '/transmission-cli.*.apk/ {print $2}' ''',
100100
returnStdout: true).trim()
101101
env.RELEASE_LINK = 'custom_command'
102102
}

README.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,6 @@ Find us at:
1414
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
1515
* [Podcast](https://anchor.fm/linuxserverio) - on hiatus. Coming back soon (late 2018).
1616

17-
# PSA: Changes are happening
18-
19-
From August 2018 onwards, Linuxserver are in the midst of switching to a new CI platform which will enable us to build and release multiple architectures under a single repo. To this end, existing images for `arm64` and `armhf` builds are being deprecated. They are replaced by a manifest file in each container which automatically pulls the correct image for your architecture. You'll also be able to pull based on a specific architecture tag.
20-
21-
TLDR: Multi-arch support is changing from multiple repos to one repo per container image.
22-
2317
# [linuxserver/transmission](https://github.com/linuxserver/docker-transmission)
2418
[![](https://img.shields.io/discord/354974912613449730.svg?logo=discord&label=LSIO%20Discord&style=flat-square)](https://discord.gg/YWrKVTn)
2519
[![](https://images.microbadger.com/badges/version/linuxserver/transmission.svg)](https://microbadger.com/images/linuxserver/transmission "Get your own version badge on microbadger.com")
@@ -35,7 +29,7 @@ TLDR: Multi-arch support is changing from multiple repos to one repo per contain
3529

3630
## Supported Architectures
3731

38-
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list).
32+
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
3933

4034
Simply pulling `linuxserver/transmission` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
4135

@@ -60,6 +54,7 @@ docker create \
6054
-e PUID=1001 \
6155
-e PGID=1001 \
6256
-e TZ=Europe/London \
57+
-e TRANSMISSION_WEB_HOME=/combustion-release/ `#optional` \
6358
-p 9091:9091 \
6459
-p 51413:51413 \
6560
-p 51413:51413/udp \
@@ -86,6 +81,7 @@ services:
8681
- PUID=1001
8782
- PGID=1001
8883
- TZ=Europe/London
84+
- TRANSMISSION_WEB_HOME=/combustion-release/ #optional
8985
volumes:
9086
- <path to data>:/config
9187
- <path to downloads>:/downloads
@@ -110,6 +106,7 @@ Container images are configured using parameters passed at runtime (such as thos
110106
| `-e PUID=1001` | for UserID - see below for explanation |
111107
| `-e PGID=1001` | for GroupID - see below for explanation |
112108
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London. |
109+
| `-e TRANSMISSION_WEB_HOME=/combustion-release/` | Specify an alternative UI options are `/combustion-release/` and `/transmission-web-control/`. |
113110
| `-v /config` | Where transmission should store config files and logs. |
114111
| `-v /downloads` | Local path for downloads. |
115112
| `-v /watch` | Watch folder for torrent files. |
@@ -132,6 +129,11 @@ In this instance `PUID=1001` and `PGID=1001`, to find yours use `id user` as bel
132129
## Application Setup
133130

134131
Webui is on port 9091, the settings.json file in /config has extra settings not available in the webui. Stop the container before editing it or any changes won't be saved.
132+
133+
For users pulling an update and unable to access the webui setting you may need to set "rpc-host-whitelist-enabled": false, in /config/settings.json`
134+
135+
If you choose to use transmission-web-control as your default UI, just note that the origional Web UI will not be available to you despite the button being present.
136+
135137
## Securing the webui with a username/password.
136138

137139
this requires 3 settings to be changed in the settings.json file.
@@ -186,6 +188,7 @@ Below are the instructions for updating containers:
186188

187189
## Versions
188190

191+
* **22.02.19:** - Rebase to Alpine 3.9, add themes to baseimage, add python and findutils.
189192
* **22.02.19:** - Catch term and clean exit.
190193
* **07.02.19:** - Add pipeline logic and multi arch.
191194
* **15.08.18:** - Rebase to alpine linux 3.8.

jenkins-vars.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# jenkins variables
44
project_name: docker-transmission
55
external_type: na
6-
custom_version_command: "curl -s http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/ |awk -F '(transmission-cli-|.apk)' '/transmission-cli.*.apk/ {print $2}'"
6+
custom_version_command: "curl -s http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/ |awk -F '(transmission-cli-|.apk)' '/transmission-cli.*.apk/ {print $2}'"
77
release_type: stable
88
release_tag: latest
99
ls_branch: master

readme-vars.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,9 @@ param_device_map: false
3838
cap_add_param: false
3939

4040
# optional container parameters
41-
opt_param_usage_include_env: false
41+
opt_param_usage_include_env: true
42+
opt_param_env_vars:
43+
- { env_var: "TRANSMISSION_WEB_HOME", env_value: "/combustion-release/", desc: "Specify an alternative UI options are `/combustion-release/` and `/transmission-web-control/`." }
4244
opt_param_usage_include_vols: false
4345
opt_param_usage_include_ports: false
4446
opt_param_device_map: false
@@ -49,6 +51,11 @@ optional_block_1: false
4951
app_setup_block_enabled: true
5052
app_setup_block: |
5153
Webui is on port 9091, the settings.json file in /config has extra settings not available in the webui. Stop the container before editing it or any changes won't be saved.
54+
55+
For users pulling an update and unable to access the webui setting you may need to set "rpc-host-whitelist-enabled": false, in /config/settings.json`
56+
57+
If you choose to use transmission-web-control as your default UI, just note that the origional Web UI will not be available to you despite the button being present.
58+
5259
## Securing the webui with a username/password.
5360
5461
this requires 3 settings to be changed in the settings.json file.
@@ -74,6 +81,7 @@ app_setup_block: |
7481
# changelog
7582
changelogs:
7683

84+
- { date: "22.02.19:", desc: "Rebase to Alpine 3.9, add themes to baseimage, add python and findutils." }
7785
- { date: "22.02.19:", desc: "Catch term and clean exit." }
7886
- { date: "07.02.19:", desc: "Add pipeline logic and multi arch." }
7987
- { date: "15.08.18:", desc: "Rebase to alpine linux 3.8." }

0 commit comments

Comments
 (0)