Skip to content
This repository was archived by the owner on Feb 24, 2022. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
115 changes: 94 additions & 21 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,29 +1,102 @@
FROM linuxserver/baseimage.nginx
FROM lsiobase/alpine
MAINTAINER sparklyballs

MAINTAINER Sparklyballs <sparklyballs@linuxserver.io>
# package version
ARG MEDIAINF_VER="0.7.85"
ARG RUTORRENT_VER="3.7"

ENV APTLIST="dtach ffmpeg git-core mediainfo nano php5-geoip \
rtorrent unrar unzip wget"
RUN \
apk add --no-cache \
ca-certificates \
curl \
fcgi \
ffmpeg \
geoip \
gzip \
nginx \
rtorrent \
screen \
tar \
unrar \
unzip \
zip && \

# install packages
RUN add-apt-repository ppa:kirillshkrogalev/ffmpeg-next && \
add-apt-repository -y ppa:jalaziz/rtorrent && \
apt-get update -q && \
apt-get install $APTLIST -qy && \
apk add --no-cache \
--repository http://nl.alpinelinux.org/alpine/edge/testing \
php7 \
php7-cgi \
php7-fpm \
php7-json \
php7-pear && \

# cleanup
apt-get clean -y && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# install webui
curl -o \
/tmp/rutorrent.zip -L \
"http://dl.bintray.com/novik65/generic/ruTorrent-${RUTORRENT_VER}.zip" && \
unzip -qq /tmp/rutorrent.zip -d /tmp && \
mkdir -p \
/usr/share/webapps/rutorrent \
/defaults/rutorrent-conf && \
mv /tmp/ruTorrent-master/conf/* \
/defaults/rutorrent-conf/ && \
cp -r /tmp/ruTorrent-master/* \
/usr/share/webapps/rutorrent/ && \
rm -rf \
/defaults/rutorrent-conf/users \
/tmp/*

# install build packages
RUN \
apk add --no-cache --virtual=build-dependencies \
autoconf \
automake \
cppunit-dev \
curl-dev \
file \
g++ \
gcc \
libtool \
make \
ncurses-dev \
openssl-dev && \

# fetch and unpack source
curl -o \
/tmp/libmediainfo.tar.gz -L \
"http://mediaarea.net/download/binary/libmediainfo0/${MEDIAINF_VER}/MediaInfo_DLL_${MEDIAINF_VER}_GNU_FromSource.tar.gz" && \
curl -o \
/tmp/mediainfo.tar.gz -L \
"http://mediaarea.net/download/binary/mediainfo/${MEDIAINF_VER}/MediaInfo_CLI_${MEDIAINF_VER}_GNU_FromSource.tar.gz" && \

#Adding Custom files
ADD defaults/ /defaults/
ADD init/ /etc/my_init.d/
ADD services/ /etc/service/
RUN chmod -v +x /etc/service/*/run /etc/my_init.d/*.sh && \
mkdir -p \
/tmp/libmediainfo \
/tmp/mediainfo && \
tar xf /tmp/libmediainfo.tar.gz -C \
/tmp/libmediainfo --strip-components=1 && \
tar xf /tmp/mediainfo.tar.gz -C \
/tmp/mediainfo --strip-components=1 && \

# compile mediainfo packages
cd /tmp/libmediainfo && \
./SO_Compile.sh && \
cd /tmp/libmediainfo/ZenLib/Project/GNU/Library && \
make install && \
cd /tmp/libmediainfo/MediaInfoLib/Project/GNU/Library && \
make install && \
cd /tmp/mediainfo && \
./CLI_Compile.sh && \
cd /tmp/mediainfo/MediaInfo/Project/GNU/CLI && \
make install && \

# cleanup
apk del --purge \
build-dependencies && \
rm -rf \
/tmp/*

# configure php
sed -i 's#;upload_tmp_dir =#upload_tmp_dir = /config/tmp#g' /etc/php5/fpm/php.ini
# add local files
COPY root/ /

# ports and volumes
EXPOSE 80 9527/udp 45566-45576
# ports and volumes
EXPOSE 80
VOLUME /config /downloads
35 changes: 22 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
![https://linuxserver.io](https://www.linuxserver.io/wp-content/uploads/2015/06/linuxserver_medium.png)

The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring auto-update on startup, easy user mapping and community support. Find us for support at:
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring easy user mapping and community support. Find us for support at:
* [forum.linuxserver.io](https://forum.linuxserver.io)
* [IRC](https://www.linuxserver.io/index.php/irc/) on freenode at `#linuxserver.io`
* [Podcast](https://www.linuxserver.io/index.php/category/podcast/) covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
Expand All @@ -15,22 +15,27 @@ Popular rtorrent client with a webui for ease of use. [Rutorrent](https://github
docker create --name=ruttorent \
-v <path to data>:/config \
-v <path to downloads>:/downloads \
-e PGID=<gid> -e PUID=<uid> -e TZ=<timezone> \
-p 80:80 -p 9527:9527/udp -p 45566:45566 \
-e PGID=<gid> -e PUID=<uid> \
-e TZ=<timezone> \
-p 80:80 -p 5000:5000 \
-p 51413:51413 -p 6881:6881/udp \
linuxserver/rutorrent
```

**Parameters**

* `-p 80` - the port(s)
* `-p 45566-45576` - the port(s)
* `-p 9527/udp` - the port(s)
* `-p 5000` - the port(s)
* `-p 51413` - the port(s)
* `-p 6881/udp` - the port(s)
* `-v /config` - where rutorrent should store it's config files
* `-v /downloads` - path to your downloads folder
* `-e PGID` for GroupID - see below for explanation
* `-e PUID` for UserID - see below for explanation
* `-e TZ` for timezone information, eg Europe/London

It is based on alpine linux with s6 overlay, for shell access whilst the container is running do `docker exec -it rutorrent /bin/bash`.

### User / Group Identifiers

Sometimes when using data volumes (`-v` flags) permissions issues can arise between the host OS and the container. We avoid this issue by allowing you to specify the user `PUID` and group `PGID`. Ensure the data volume directory on the host is owned by the same user you specify and it will "just work" ™.
Expand All @@ -44,21 +49,25 @@ In this instance `PUID=1001` and `PGID=1001`. To find yours use `id user` as bel

## Setting up the application

Webui can be found at `<your-ip>:80` , configuration files are in /config/rtorrent.
Webui can be found at `<your-ip>:80` , configuration files for rtorrent are in /config/rtorrent and for the webui in /config/rutorrent/settings.

`** Important note for unraid users or those running a webserver on port 80, change port 80 assignment
**`
`Settings, changed by the user through the "Settings" panel in ruTorrent, are valid until rtorrent restart. After which all settings will be set according to the rtorrent config file (/config/rtorrent/rtorrent.rc),this is a limitation of the actual apps themselves.`

** Important note for unraid users or those running services such as a webserver on port 80, change port 80 assignment **

## Updates
`** It should also be noted that this container when run will create subfolders ,completed, incoming, sessions and watched in the /downloads volume.**`

* Shell access whilst the container is running: `docker exec -it rutorrent /bin/bash`
* Upgrade to the latest version: `docker restart rutorrent`
* To monitor the logs of the container in realtime: `docker logs -f rutorrent`
** The Port Assignments and configuration folder structure has been changed from the previous ubuntu based
versions of this container and we recommend a clean install **


## Info

* Shell access whilst the container is running: `docker exec -it rutorrent /bin/bash`
* To monitor the logs of the container in realtime: `docker logs -f rutorrent`

## Versions

+ **08.03.2016:** Intial Release.
+ **26.07.16:** Rebase to alpine.
+ **08.03.16:** Intial Release.

34 changes: 0 additions & 34 deletions defaults/default

This file was deleted.

Loading