mirror of
https://github.com/linuxserver/docker-transmission.git
synced 2025-10-26 06:36:05 +01:00
Rebase to Alpine 3.9, add themes to baseimage, add python and findutil
This commit is contained in:
29
Dockerfile
29
Dockerfile
@@ -1,4 +1,4 @@
|
||||
FROM lsiobase/alpine:3.8
|
||||
FROM lsiobase/alpine:3.9
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
@@ -10,15 +10,40 @@ RUN \
|
||||
echo "**** install packages ****" && \
|
||||
apk add --no-cache \
|
||||
curl \
|
||||
findutils \
|
||||
jq \
|
||||
openssl \
|
||||
p7zip \
|
||||
python \
|
||||
rsync \
|
||||
tar \
|
||||
transmission-cli \
|
||||
transmission-daemon \
|
||||
unrar \
|
||||
unzip
|
||||
unzip && \
|
||||
echo "**** install third party themes ****" && \
|
||||
curl -o \
|
||||
/tmp/combustion.zip -L \
|
||||
"https://github.com/Secretmapper/combustion/archive/release.zip" && \
|
||||
unzip \
|
||||
/tmp/combustion.zip -d \
|
||||
/ && \
|
||||
mkdir -p /tmp/twctemp && \
|
||||
TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \
|
||||
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
|
||||
curl -o \
|
||||
/tmp/twc.tar.gz -L \
|
||||
"https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \
|
||||
tar xf \
|
||||
/tmp/twc.tar.gz -C \
|
||||
/tmp/twctemp --strip-components=1 && \
|
||||
mv /tmp/twctemp/src /transmission-web-control && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/tmp/*
|
||||
|
||||
|
||||
|
||||
|
||||
# copy local files
|
||||
COPY root/ /
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM lsiobase/alpine.arm64:3.8
|
||||
FROM lsiobase/alpine.arm64:3.9
|
||||
|
||||
# Add qemu to build on x86_64 systems
|
||||
COPY qemu-aarch64-static /usr/bin
|
||||
@@ -13,15 +13,40 @@ RUN \
|
||||
echo "**** install packages ****" && \
|
||||
apk add --no-cache \
|
||||
curl \
|
||||
findutils \
|
||||
jq \
|
||||
openssl \
|
||||
p7zip \
|
||||
python \
|
||||
rsync \
|
||||
tar \
|
||||
transmission-cli \
|
||||
transmission-daemon \
|
||||
unrar \
|
||||
unzip
|
||||
unzip && \
|
||||
echo "**** install third party themes ****" && \
|
||||
curl -o \
|
||||
/tmp/combustion.zip -L \
|
||||
"https://github.com/Secretmapper/combustion/archive/release.zip" && \
|
||||
unzip \
|
||||
/tmp/combustion.zip -d \
|
||||
/ && \
|
||||
mkdir -p /tmp/twctemp && \
|
||||
TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \
|
||||
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
|
||||
curl -o \
|
||||
/tmp/twc.tar.gz -L \
|
||||
"https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \
|
||||
tar xf \
|
||||
/tmp/twc.tar.gz -C \
|
||||
/tmp/twctemp --strip-components=1 && \
|
||||
mv /tmp/twctemp/src /transmission-web-control && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/tmp/*
|
||||
|
||||
|
||||
|
||||
|
||||
# copy local files
|
||||
COPY root/ /
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM lsiobase/alpine.armhf:3.8
|
||||
FROM lsiobase/alpine.armhf:3.9
|
||||
|
||||
# Add qemu to build on x86_64 systems
|
||||
COPY qemu-arm-static /usr/bin
|
||||
@@ -13,15 +13,40 @@ RUN \
|
||||
echo "**** install packages ****" && \
|
||||
apk add --no-cache \
|
||||
curl \
|
||||
findutils \
|
||||
jq \
|
||||
openssl \
|
||||
p7zip \
|
||||
python \
|
||||
rsync \
|
||||
tar \
|
||||
transmission-cli \
|
||||
transmission-daemon \
|
||||
unrar \
|
||||
unzip
|
||||
unzip && \
|
||||
echo "**** install third party themes ****" && \
|
||||
curl -o \
|
||||
/tmp/combustion.zip -L \
|
||||
"https://github.com/Secretmapper/combustion/archive/release.zip" && \
|
||||
unzip \
|
||||
/tmp/combustion.zip -d \
|
||||
/ && \
|
||||
mkdir -p /tmp/twctemp && \
|
||||
TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \
|
||||
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
|
||||
curl -o \
|
||||
/tmp/twc.tar.gz -L \
|
||||
"https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \
|
||||
tar xf \
|
||||
/tmp/twc.tar.gz -C \
|
||||
/tmp/twctemp --strip-components=1 && \
|
||||
mv /tmp/twctemp/src /transmission-web-control && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/tmp/*
|
||||
|
||||
|
||||
|
||||
|
||||
# copy local files
|
||||
COPY root/ /
|
||||
|
||||
2
Jenkinsfile
vendored
2
Jenkinsfile
vendored
@@ -96,7 +96,7 @@ pipeline {
|
||||
steps{
|
||||
script{
|
||||
env.EXT_RELEASE = sh(
|
||||
script: ''' curl -s http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/ |awk -F '(transmission-cli-|.apk)' '/transmission-cli.*.apk/ {print $2}' ''',
|
||||
script: ''' curl -s http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/ |awk -F '(transmission-cli-|.apk)' '/transmission-cli.*.apk/ {print $2}' ''',
|
||||
returnStdout: true).trim()
|
||||
env.RELEASE_LINK = 'custom_command'
|
||||
}
|
||||
|
||||
17
README.md
17
README.md
@@ -14,12 +14,6 @@ Find us at:
|
||||
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
|
||||
* [Podcast](https://anchor.fm/linuxserverio) - on hiatus. Coming back soon (late 2018).
|
||||
|
||||
# PSA: Changes are happening
|
||||
|
||||
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.
|
||||
|
||||
TLDR: Multi-arch support is changing from multiple repos to one repo per container image.
|
||||
|
||||
# [linuxserver/transmission](https://github.com/linuxserver/docker-transmission)
|
||||
[](https://discord.gg/YWrKVTn)
|
||||
[](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
|
||||
|
||||
## Supported Architectures
|
||||
|
||||
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).
|
||||
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/).
|
||||
|
||||
Simply pulling `linuxserver/transmission` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
|
||||
|
||||
@@ -60,6 +54,7 @@ docker create \
|
||||
-e PUID=1001 \
|
||||
-e PGID=1001 \
|
||||
-e TZ=Europe/London \
|
||||
-e TRANSMISSION_WEB_HOME=/combustion-release/ `#optional` \
|
||||
-p 9091:9091 \
|
||||
-p 51413:51413 \
|
||||
-p 51413:51413/udp \
|
||||
@@ -86,6 +81,7 @@ services:
|
||||
- PUID=1001
|
||||
- PGID=1001
|
||||
- TZ=Europe/London
|
||||
- TRANSMISSION_WEB_HOME=/combustion-release/ #optional
|
||||
volumes:
|
||||
- <path to data>:/config
|
||||
- <path to downloads>:/downloads
|
||||
@@ -110,6 +106,7 @@ Container images are configured using parameters passed at runtime (such as thos
|
||||
| `-e PUID=1001` | for UserID - see below for explanation |
|
||||
| `-e PGID=1001` | for GroupID - see below for explanation |
|
||||
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London. |
|
||||
| `-e TRANSMISSION_WEB_HOME=/combustion-release/` | Specify an alternative UI options are `/combustion-release/` and `/transmission-web-control/`. |
|
||||
| `-v /config` | Where transmission should store config files and logs. |
|
||||
| `-v /downloads` | Local path for downloads. |
|
||||
| `-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
|
||||
## Application Setup
|
||||
|
||||
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.
|
||||
|
||||
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`
|
||||
|
||||
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.
|
||||
|
||||
## Securing the webui with a username/password.
|
||||
|
||||
this requires 3 settings to be changed in the settings.json file.
|
||||
@@ -186,6 +188,7 @@ Below are the instructions for updating containers:
|
||||
|
||||
## Versions
|
||||
|
||||
* **22.02.19:** - Rebase to Alpine 3.9, add themes to baseimage, add python and findutils.
|
||||
* **22.02.19:** - Catch term and clean exit.
|
||||
* **07.02.19:** - Add pipeline logic and multi arch.
|
||||
* **15.08.18:** - Rebase to alpine linux 3.8.
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# jenkins variables
|
||||
project_name: docker-transmission
|
||||
external_type: na
|
||||
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}'"
|
||||
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}'"
|
||||
release_type: stable
|
||||
release_tag: latest
|
||||
ls_branch: master
|
||||
|
||||
@@ -38,7 +38,9 @@ param_device_map: false
|
||||
cap_add_param: false
|
||||
|
||||
# optional container parameters
|
||||
opt_param_usage_include_env: false
|
||||
opt_param_usage_include_env: true
|
||||
opt_param_env_vars:
|
||||
- { env_var: "TRANSMISSION_WEB_HOME", env_value: "/combustion-release/", desc: "Specify an alternative UI options are `/combustion-release/` and `/transmission-web-control/`." }
|
||||
opt_param_usage_include_vols: false
|
||||
opt_param_usage_include_ports: false
|
||||
opt_param_device_map: false
|
||||
@@ -49,6 +51,11 @@ optional_block_1: false
|
||||
app_setup_block_enabled: true
|
||||
app_setup_block: |
|
||||
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.
|
||||
|
||||
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`
|
||||
|
||||
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.
|
||||
|
||||
## Securing the webui with a username/password.
|
||||
|
||||
this requires 3 settings to be changed in the settings.json file.
|
||||
@@ -74,6 +81,7 @@ app_setup_block: |
|
||||
# changelog
|
||||
changelogs:
|
||||
|
||||
- { date: "22.02.19:", desc: "Rebase to Alpine 3.9, add themes to baseimage, add python and findutils." }
|
||||
- { date: "22.02.19:", desc: "Catch term and clean exit." }
|
||||
- { date: "07.02.19:", desc: "Add pipeline logic and multi arch." }
|
||||
- { date: "15.08.18:", desc: "Rebase to alpine linux 3.8." }
|
||||
|
||||
Reference in New Issue
Block a user