mirror of
https://github.com/linuxserver/docker-transmission.git
synced 2025-12-17 13:39:43 +01:00
Compare commits
45 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ad5f6ecfaa | ||
|
|
9f73545a49 | ||
|
|
14ced70888 | ||
|
|
4302df7270 | ||
|
|
2a202a800f | ||
|
|
227da52355 | ||
|
|
8fc46f45ec | ||
|
|
0461071b92 | ||
|
|
9fb8dcd358 | ||
|
|
328068e20d | ||
|
|
9091730d00 | ||
|
|
4246f944d6 | ||
|
|
b4e526cedf | ||
|
|
f0c27ab450 | ||
|
|
244f5c6810 | ||
|
|
d22fdb48dc | ||
|
|
97dfe76a57 | ||
|
|
76293d786a | ||
|
|
1f0f18517d | ||
|
|
f505697081 | ||
|
|
d9420323ac | ||
|
|
5138709d55 | ||
|
|
f7490f4fd7 | ||
|
|
6bad2d716e | ||
|
|
72c8df500e | ||
|
|
a1b5353ea2 | ||
|
|
96a625b9cd | ||
|
|
90510c1308 | ||
|
|
401a469bb8 | ||
|
|
8d7f56dcde | ||
|
|
c3e2acd4c9 | ||
|
|
4f5055dc4a | ||
|
|
2329699f53 | ||
|
|
8538165d17 | ||
|
|
d322a13696 | ||
|
|
33589b220f | ||
|
|
3da388bba1 | ||
|
|
fcd4c32ba5 | ||
|
|
e97bd50b83 | ||
|
|
ad91ae6396 | ||
|
|
eecebfb5c2 | ||
|
|
6c1e5e273a | ||
|
|
3420cab227 | ||
|
|
39909f7c4b | ||
|
|
9253db127d |
2
.github/ISSUE_TEMPLATE.md
vendored
2
.github/ISSUE_TEMPLATE.md
vendored
@@ -1,7 +1,7 @@
|
|||||||
<!--- Provide a general summary of the issue in the Title above -->
|
<!--- Provide a general summary of the issue in the Title above -->
|
||||||
|
|
||||||
[linuxserverurl]: https://linuxserver.io
|
[linuxserverurl]: https://linuxserver.io
|
||||||
[][linuxserverurl]
|
[][linuxserverurl]
|
||||||
|
|
||||||
|
|
||||||
<!--- If you have an issue with the project, please provide us with the following information -->
|
<!--- If you have an issue with the project, please provide us with the following information -->
|
||||||
|
|||||||
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -1,7 +1,7 @@
|
|||||||
<!--- Provide a general summary of your changes in the Title above -->
|
<!--- Provide a general summary of your changes in the Title above -->
|
||||||
|
|
||||||
[linuxserverurl]: https://linuxserver.io
|
[linuxserverurl]: https://linuxserver.io
|
||||||
[][linuxserverurl]
|
[][linuxserverurl]
|
||||||
|
|
||||||
|
|
||||||
<!--- Before submitting a pull request please check the following -->
|
<!--- Before submitting a pull request please check the following -->
|
||||||
|
|||||||
24
Dockerfile
24
Dockerfile
@@ -1,12 +1,26 @@
|
|||||||
FROM lsiobase/alpine
|
FROM lsiobase/alpine:3.8
|
||||||
MAINTAINER sparklyballs
|
|
||||||
|
# set version label
|
||||||
|
ARG BUILD_DATE
|
||||||
|
ARG VERSION
|
||||||
|
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||||
|
LABEL maintainer="sparklyballs"
|
||||||
|
|
||||||
# install packages
|
|
||||||
RUN \
|
RUN \
|
||||||
|
echo "**** install packages ****" && \
|
||||||
apk add --no-cache \
|
apk add --no-cache \
|
||||||
transmission-daemon
|
curl \
|
||||||
|
jq \
|
||||||
|
openssl \
|
||||||
|
p7zip \
|
||||||
|
rsync \
|
||||||
|
tar \
|
||||||
|
transmission-cli \
|
||||||
|
transmission-daemon \
|
||||||
|
unrar \
|
||||||
|
unzip
|
||||||
|
|
||||||
# copy local files
|
# copy local files
|
||||||
COPY root/ /
|
COPY root/ /
|
||||||
|
|
||||||
# ports and volumes
|
# ports and volumes
|
||||||
|
|||||||
61
README.md
61
README.md
@@ -1,9 +1,11 @@
|
|||||||
[linuxserverurl]: https://linuxserver.io
|
[linuxserverurl]: https://linuxserver.io
|
||||||
[forumurl]: https://forum.linuxserver.io
|
[forumurl]: https://forum.linuxserver.io
|
||||||
[ircurl]: https://www.linuxserver.io/index.php/irc/
|
[ircurl]: https://www.linuxserver.io/irc/
|
||||||
[podcasturl]: https://www.linuxserver.io/index.php/category/podcast/
|
[podcasturl]: https://www.linuxserver.io/podcast/
|
||||||
|
[appurl]: https://www.transmissionbt.com/
|
||||||
|
[hub]: https://hub.docker.com/r/linuxserver/transmission/
|
||||||
|
|
||||||
[][linuxserverurl]
|
[][linuxserverurl]
|
||||||
|
|
||||||
The [LinuxServer.io][linuxserverurl] team brings you another container release featuring easy user mapping and community support. Find us for support at:
|
The [LinuxServer.io][linuxserverurl] team brings you another container release featuring easy user mapping and community support. Find us for support at:
|
||||||
* [forum.linuxserver.io][forumurl]
|
* [forum.linuxserver.io][forumurl]
|
||||||
@@ -11,13 +13,11 @@ The [LinuxServer.io][linuxserverurl] team brings you another container release f
|
|||||||
* [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
|
* [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
|
||||||
|
|
||||||
# linuxserver/transmission
|
# linuxserver/transmission
|
||||||
[](http://microbadger.com/images/linuxserver/transmission "Get your own image badge on microbadger.com")[][hub][][hub][](http://jenkins.linuxserver.io:8080/job/Dockers/job/LinuxServer.io/job/linuxserver-transmission/)
|
[](https://microbadger.com/images/linuxserver/transmission "Get your own version badge on microbadger.com")[](https://microbadger.com/images/linuxserver/transmission "Get your own image badge on microbadger.com")[][hub][][hub][](https://ci.linuxserver.io/job/Docker-Builders/job/x86-64/job/x86-64-transmission/)
|
||||||
[hub]: https://hub.docker.com/r/linuxserver/transmission/
|
|
||||||
|
|
||||||
Transmission is designed for easy, powerful use. Transmission has the features you want from a BitTorrent client: encryption, a web interface, peer exchange, magnet links, DHT, µTP, UPnP and NAT-PMP port forwarding, webseed support, watch directories, tracker editing, global and per-torrent speed limits, and more. [Transmission](http://www.transmissionbt.com/about/)
|
Transmission is designed for easy, powerful use. Transmission has the features you want from a BitTorrent client: encryption, a web interface, peer exchange, magnet links, DHT, µTP, UPnP and NAT-PMP port forwarding, webseed support, watch directories, tracker editing, global and per-torrent speed limits, and more. [Transmission](http://www.transmissionbt.com/about/)
|
||||||
|
|
||||||
[][transurl]
|
[][appurl]
|
||||||
[transurl]: https://www.transmissionbt.com/
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
@@ -33,7 +33,13 @@ docker create --name=transmission \
|
|||||||
linuxserver/transmission
|
linuxserver/transmission
|
||||||
```
|
```
|
||||||
|
|
||||||
**Parameters**
|
## Parameters
|
||||||
|
|
||||||
|
`The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side.
|
||||||
|
For example with a port -p external:internal - what this shows is the port mapping from internal to external of the container.
|
||||||
|
So -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080
|
||||||
|
http://192.168.x.x:8080 would show you what's running INSIDE the container on port 80.`
|
||||||
|
|
||||||
|
|
||||||
* `-p 9091`
|
* `-p 9091`
|
||||||
* `-p 51413` - the port(s)
|
* `-p 51413` - the port(s)
|
||||||
@@ -61,15 +67,54 @@ In this instance `PUID=1001` and `PGID=1001`. To find yours use `id user` as bel
|
|||||||
|
|
||||||
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.
|
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.
|
||||||
|
|
||||||
|
## Securing the webui with a username/password.
|
||||||
|
|
||||||
|
this requires 3 settings to be changed in the settings.json file.
|
||||||
|
|
||||||
|
`Make sure the container is stopped before editing these settings.`
|
||||||
|
|
||||||
|
`"rpc-authentication-required": true,` - check this, the default is false, change to true.
|
||||||
|
|
||||||
|
`"rpc-username": "transmission",` substitute transmission for your chosen user name, this is just an example.
|
||||||
|
|
||||||
|
`rpc-password` will be a hash starting with {, replace everything including the { with your chosen password, keeping the quotes.
|
||||||
|
|
||||||
|
Transmission will convert it to a hash when you restart the container after making the above edits.
|
||||||
|
|
||||||
|
## Updating Blocklists Automatically
|
||||||
|
|
||||||
|
This requires `"blocklist-enabled": true,` to be set. By setting this to true, it is assumed you have also populated `blocklist-url` with a valid block list.
|
||||||
|
|
||||||
|
The automatic update is a shell script that downloads a blocklist from the url stored in the settings.json, gunzips it, and restarts the transmission daemon.
|
||||||
|
|
||||||
|
The automatic update will run once a day at 3am local server time.
|
||||||
|
|
||||||
## Info
|
## Info
|
||||||
|
|
||||||
* To monitor the logs of the container in realtime `docker logs -f transmission`.
|
* To monitor the logs of the container in realtime `docker logs -f transmission`.
|
||||||
|
|
||||||
|
* container version number
|
||||||
|
|
||||||
|
`docker inspect -f '{{ index .Config.Labels "build_version" }}' transmission`
|
||||||
|
|
||||||
|
* image version number
|
||||||
|
|
||||||
|
`docker inspect -f '{{ index .Config.Labels "build_version" }}' linuxserver/transmission`
|
||||||
|
|
||||||
|
|
||||||
## Versions
|
## Versions
|
||||||
|
|
||||||
|
+ **15.08.18:** Rebase to alpine linux 3.8.
|
||||||
|
+ **12.02.18:** Pull transmission from edge repo.
|
||||||
|
+ **10.01.18:** Rebase to alpine linux 3.7.
|
||||||
|
+ **25.07.17:** Add rsync package.
|
||||||
|
+ **27.05.17:** Rebase to alpine linux 3.6.
|
||||||
|
+ **06.02.17:** Rebase to alpine linux 3.5.
|
||||||
|
+ **15.01.17:** Add p7zip, tar , unrar and unzip packages.
|
||||||
|
+ **16.10.16:** Blocklist autoupdate with optional authentication.
|
||||||
|
+ **14.10.16:** Add version layer information.
|
||||||
|
+ **23.09.16:** Add information about securing the webui to README..
|
||||||
|
+ **21.09.16:** Add curl package.
|
||||||
+ **09.09.16:** Add layer badges to README.
|
+ **09.09.16:** Add layer badges to README.
|
||||||
+ **28.08.16:** Add badges to README.
|
+ **28.08.16:** Add badges to README.
|
||||||
+ **09.08.16:** Rebase to alpine linux.
|
+ **09.08.16:** Rebase to alpine linux.
|
||||||
|
|||||||
20
root/defaults/blocklist-update.sh
Normal file
20
root/defaults/blocklist-update.sh
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
#!/usr/bin/with-contenv bash
|
||||||
|
|
||||||
|
BLOCKLIST_ENABLED=`jq -r '.["blocklist-enabled"]' /config/settings.json`
|
||||||
|
BLOCKLIST_URL=`jq -r '.["blocklist-url"]' /config/settings.json | sed 's/\&/\&/g'`
|
||||||
|
|
||||||
|
if [ $BLOCKLIST_ENABLED == true ]; then
|
||||||
|
mkdir -p /tmp/blocklists
|
||||||
|
rm -rf /tmp/blocklists/*
|
||||||
|
cd /tmp/blocklists
|
||||||
|
wget -q -O blocklist.gz "$BLOCKLIST_URL"
|
||||||
|
if [ $? == 0 ]; then
|
||||||
|
gunzip *.gz
|
||||||
|
if [ $? == 0 ]; then
|
||||||
|
chmod go+r *
|
||||||
|
rm -rf /config/blocklists/*
|
||||||
|
cp /tmp/blocklists/* /config/blocklists
|
||||||
|
s6-svc -h /var/run/s6/services/transmission
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
@@ -8,10 +8,17 @@ mkdir -p \
|
|||||||
[[ ! -f /config/settings.json ]] && cp \
|
[[ ! -f /config/settings.json ]] && cp \
|
||||||
/defaults/settings.json /config/settings.json
|
/defaults/settings.json /config/settings.json
|
||||||
|
|
||||||
|
# copy blocklist-update script
|
||||||
|
[[ ! -f /config/blocklist-update.sh ]] && cp \
|
||||||
|
/defaults/blocklist-update.sh /config/blocklist-update.sh
|
||||||
|
|
||||||
# permissions
|
# permissions
|
||||||
chown abc:abc \
|
chown abc:abc \
|
||||||
/config/settings.json \
|
/config/settings.json \
|
||||||
|
/config/blocklist-update.sh \
|
||||||
/downloads \
|
/downloads \
|
||||||
/downloads/complete \
|
/downloads/complete \
|
||||||
/downloads/incomplete \
|
/downloads/incomplete \
|
||||||
/watch
|
/watch
|
||||||
|
|
||||||
|
chmod 755 /config/blocklist-update.sh
|
||||||
|
|||||||
10
root/etc/crontabs/root
Normal file
10
root/etc/crontabs/root
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# do daily/weekly/monthly maintenance
|
||||||
|
# min hour day month weekday command
|
||||||
|
*/15 * * * * run-parts /etc/periodic/15min
|
||||||
|
0 * * * * run-parts /etc/periodic/hourly
|
||||||
|
0 2 * * * run-parts /etc/periodic/daily
|
||||||
|
0 3 * * 6 run-parts /etc/periodic/weekly
|
||||||
|
0 5 1 * * run-parts /etc/periodic/monthly
|
||||||
|
|
||||||
|
# run daily blocklist update
|
||||||
|
0 3 * * * /config/blocklist-update.sh 2>&1
|
||||||
3
root/etc/services.d/cron/run
Normal file
3
root/etc/services.d/cron/run
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#!/usr/bin/with-contenv bash
|
||||||
|
|
||||||
|
/usr/sbin/crond -f -S -l 0 -c /etc/crontabs
|
||||||
Reference in New Issue
Block a user