mirror of
https://github.com/hoellen/dockerfiles.git
synced 2025-07-01 14:45:38 +00:00
initial commit
This commit is contained in:
119
rutorrent/Dockerfile
Normal file
119
rutorrent/Dockerfile
Normal file
@ -0,0 +1,119 @@
|
||||
FROM alpine:3.3
|
||||
MAINTAINER xataz <https://github.com/xataz/dockerfiles>
|
||||
MAINTAINER Wonderfall <wonderfall@schrodinger.io>
|
||||
|
||||
ARG MEDIAINFO_VER=0.7.84
|
||||
ARG RTORRENT_VER=0.9.6
|
||||
ARG LIBTORRENT_VER=0.13.6
|
||||
ARG FILEBOT_VER=4.6.1
|
||||
ARG BUILD_CORES
|
||||
|
||||
ENV UID=991 \
|
||||
GID=991 \
|
||||
WEBROOT=/ \
|
||||
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
|
||||
|
||||
RUN echo "@commuedge http://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \
|
||||
&& echo "@testing http://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
|
||||
&& echo "@community http://nl.alpinelinux.org/alpine/v3.3/community/" >> /etc/apk/repositories \
|
||||
&& NB_CORES=${BUILD_CORES-`getconf _NPROCESSORS_CONF`} \
|
||||
&& BUILD_DEPS=" \
|
||||
build-base \
|
||||
git \
|
||||
libtool \
|
||||
automake \
|
||||
autoconf \
|
||||
wget \
|
||||
subversion \
|
||||
cppunit-dev \
|
||||
openssl-dev \
|
||||
ncurses-dev \
|
||||
curl-dev" \
|
||||
&& apk -U add \
|
||||
${BUILD_DEPS} \
|
||||
ffmpeg \
|
||||
ca-certificates \
|
||||
nginx \
|
||||
php7@testing \
|
||||
php7-fpm@testing \
|
||||
php7-json@testing \
|
||||
curl \
|
||||
gzip \
|
||||
zip \
|
||||
unrar \
|
||||
supervisor \
|
||||
geoip \
|
||||
tini@commuedge \
|
||||
openjdk8-jre@community \
|
||||
&& cd /tmp \
|
||||
&& wget -q http://downloads.sourceforge.net/mktorrent/mktorrent-1.0.tar.gz \
|
||||
&& tar xzvf mktorrent-1.0.tar.gz \
|
||||
&& svn checkout http://svn.code.sf.net/p/xmlrpc-c/code/stable xmlrpc-c \
|
||||
&& git clone https://github.com/rakshasa/libtorrent.git \
|
||||
&& git clone https://github.com/rakshasa/rtorrent.git \
|
||||
&& wget http://mediaarea.net/download/binary/mediainfo/${MEDIAINFO_VER}/MediaInfo_CLI_${MEDIAINFO_VER}_GNU_FromSource.tar.gz \
|
||||
&& wget http://mediaarea.net/download/binary/libmediainfo0/${MEDIAINFO_VER}/MediaInfo_DLL_${MEDIAINFO_VER}_GNU_FromSource.tar.gz \
|
||||
&& tar xzf MediaInfo_DLL_${MEDIAINFO_VER}_GNU_FromSource.tar.gz \
|
||||
&& tar xzf MediaInfo_CLI_${MEDIAINFO_VER}_GNU_FromSource.tar.gz \
|
||||
&& tar xzvf mktorrent-1.0.tar.gz \
|
||||
&& cd /tmp/mktorrent-1.0 \
|
||||
&& make -j ${NB_CORES} \
|
||||
&& make install \
|
||||
&& cd /tmp/MediaInfo_DLL_GNU_FromSource \
|
||||
&& ./SO_Compile.sh \
|
||||
&& cd /tmp/MediaInfo_DLL_GNU_FromSource/ZenLib/Project/GNU/Library \
|
||||
&& make install \
|
||||
&& cd /tmp/MediaInfo_DLL_GNU_FromSource/MediaInfoLib/Project/GNU/Library \
|
||||
&& make install \
|
||||
&& cd /tmp/MediaInfo_CLI_GNU_FromSource \
|
||||
&& ./CLI_Compile.sh \
|
||||
&& cd /tmp/MediaInfo_CLI_GNU_FromSource/MediaInfo/Project/GNU/CLI \
|
||||
&& make install \
|
||||
&& cd /tmp/xmlrpc-c \
|
||||
&& ./configure \
|
||||
&& make -j ${NB_CORES} \
|
||||
&& make install \
|
||||
&& cd /tmp/libtorrent \
|
||||
&& git checkout ${LIBTORRENT_VER} \
|
||||
&& ./autogen.sh \
|
||||
&& ./configure \
|
||||
&& make -j ${NB_CORES} \
|
||||
&& make install \
|
||||
&& cd /tmp/rtorrent \
|
||||
&& git checkout ${RTORRENT_VER} \
|
||||
&& ./autogen.sh \
|
||||
&& ./configure --with-xmlrpc-c \
|
||||
&& make -j ${NB_CORES} \
|
||||
&& make install \
|
||||
&& mkdir -p /var/www \
|
||||
&& cd /var/www \
|
||||
&& git clone https://github.com/Novik/ruTorrent.git rutorrent \
|
||||
&& cd /var/www/rutorrent/plugins/ \
|
||||
&& git clone https://github.com/xombiemp/rutorrentMobile.git mobile \
|
||||
&& cd /var/www/rutorrent/plugins/theme/themes \
|
||||
&& git clone https://github.com/exetico/FlatUI.git \
|
||||
&& mv FlatUI/FlatUI_* . \
|
||||
&& rm -rf FlatUI \
|
||||
&& mv /var/www/rutorrent /var/www/torrent \
|
||||
&& mkdir /filebot \
|
||||
&& wget -q http://downloads.sourceforge.net/project/filebot/filebot/FileBot_${FILEBOT_VER}/FileBot_${FILEBOT_VER}-portable.zip -P /tmp \
|
||||
&& unzip -q /tmp/FileBot_${FILEBOT_VER}-portable.zip -d /filebot \
|
||||
&& apk del ${BUILD_DEPS} \
|
||||
&& deluser svn \
|
||||
&& delgroup svnusers \
|
||||
&& rm -rf /var/cache/apk/* /tmp/*
|
||||
|
||||
COPY rootfs /
|
||||
|
||||
RUN chmod +x /usr/bin/*
|
||||
|
||||
VOLUME /data /var/www/torrent/share/users
|
||||
EXPOSE 80 49184 49184/udp
|
||||
|
||||
LABEL description="BitTorrent client with WebUI front-end" \
|
||||
rtorrent="rTorrent BiTorrent client v$RTORRENT_VER" \
|
||||
libtorrent="libtorrent v$LIBTORRENT_VER" \
|
||||
mediainfo="mediainfo v$MEDIAINFO_VER" \
|
||||
filebot="Filebot v$FILEBOT_VER"
|
||||
|
||||
CMD ["tini","--","startup"]
|
61
rutorrent/README.md
Normal file
61
rutorrent/README.md
Normal file
@ -0,0 +1,61 @@
|
||||
# RuTorrent Image
|
||||
|
||||
## ImageLayer
|
||||
* latest [](https://imagelayers.io/?images=xataz/rutorrent:latest 'Get your own badge on imagelayers.io')
|
||||
* latest-filebot, filebot [](https://imagelayers.io/?images=xataz/rutorrent:filebot 'Get your own badge on imagelayers.io')
|
||||
|
||||
## Tag available
|
||||
* latest [(rutorrent/latest/Dockerfile)](https://github.com/xataz/dockerfiles/blob/master/rutorrent/latest/Dockerfile)
|
||||
* latest-filebot, filebot [(rutorrent/latest-filebot/Dockerfile)](https://github.com/xataz/dockerfiles/blob/master/rutorrent/latest-filebot/Dockerfile)
|
||||
|
||||
## Description
|
||||
What is [RuTorrent](https://github.com/Novik/ruTorrent) ?
|
||||
|
||||
ruTorrent is a front-end for the popular Bittorrent client rtorrent.
|
||||
This project is released under the GPLv3 license, for more details, take a look at the LICENSE.md file in the source.
|
||||
|
||||
What is [rtorrent](https://github.com/rakshasa/rtorrent/) ?
|
||||
|
||||
rtorrent is the popular Bittorrent client.
|
||||
|
||||
## BUILD IMAGE
|
||||
|
||||
```shell
|
||||
docker build -t xataz/rutorrent github.com/xataz/dockerfiles.git#master:rutorrent/latest
|
||||
```
|
||||
|
||||
## Configuration
|
||||
### Environments
|
||||
* UID : Choose uid for launch rtorrent (default : 991)
|
||||
* GID : Choose gid for launch rtorrent (default : 991)
|
||||
* WEBROOT : (default : /)
|
||||
|
||||
### Volumes
|
||||
* /data : Folder for download torrents
|
||||
|
||||
#### data Folder tree
|
||||
* /data/.watch : Rtorrent watch this folder and add automatly torrent file
|
||||
* /data/.session : Rtorrent save statement here
|
||||
* /data/torrents : Rtorrent download torrent here
|
||||
* /data/Media : If filebot version, rtorrent create a symlink
|
||||
|
||||
### Ports
|
||||
* 80
|
||||
|
||||
## Usage
|
||||
### Simple launch
|
||||
```shell
|
||||
docker run -d -p 80:80 xataz/rutorrent
|
||||
```
|
||||
URI access : http://XX.XX.XX.XX
|
||||
|
||||
### Advanced launch
|
||||
```shell
|
||||
docker run -d -p 80:80 \
|
||||
-v /docker/data:/data \
|
||||
-e UID=1001 \
|
||||
-e GID=1001 \
|
||||
-e WEBROOT=/rutorrent \
|
||||
xataz/rutorrent:filebot
|
||||
```
|
||||
URI access : http://XX.XX.XX.XX/rutorrent
|
4
rutorrent/rootfs/etc/nginx/conf.d/cache.conf
Normal file
4
rutorrent/rootfs/etc/nginx/conf.d/cache.conf
Normal file
@ -0,0 +1,4 @@
|
||||
location ~* \.(jpg|jpeg|gif|css|png|js|map|woff|woff2|ttf|svg|eot)$ {
|
||||
expires 30d;
|
||||
access_log off;
|
||||
}
|
6
rutorrent/rootfs/etc/nginx/conf.d/php.conf
Normal file
6
rutorrent/rootfs/etc/nginx/conf.d/php.conf
Normal file
@ -0,0 +1,6 @@
|
||||
location ~ \.php$ {
|
||||
fastcgi_index index.php;
|
||||
fastcgi_pass unix:/var/run/php-fpm.sock;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include /etc/nginx/fastcgi_params;
|
||||
}
|
50
rutorrent/rootfs/etc/nginx/nginx.conf
Normal file
50
rutorrent/rootfs/etc/nginx/nginx.conf
Normal file
@ -0,0 +1,50 @@
|
||||
user torrent;
|
||||
worker_processes auto;
|
||||
pid /var/run/nginx.pid;
|
||||
daemon off;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
use epoll;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
|
||||
access_log /var/log/nginx/access.log combined;
|
||||
error_log /var/log/nginx/error.log error;
|
||||
|
||||
sendfile on;
|
||||
keepalive_timeout 15;
|
||||
keepalive_disable msie6;
|
||||
keepalive_requests 100;
|
||||
tcp_nopush on;
|
||||
tcp_nodelay off;
|
||||
server_tokens off;
|
||||
|
||||
gzip on;
|
||||
gzip_comp_level 5;
|
||||
gzip_min_length 512;
|
||||
gzip_buffers 4 8k;
|
||||
gzip_proxied any;
|
||||
gzip_vary on;
|
||||
gzip_disable "msie6";
|
||||
gzip_types
|
||||
text/css
|
||||
text/javascript
|
||||
text/xml
|
||||
text/plain
|
||||
text/x-component
|
||||
application/javascript
|
||||
application/x-javascript
|
||||
application/json
|
||||
application/xml
|
||||
application/rss+xml
|
||||
application/vnd.ms-fontobject
|
||||
font/truetype
|
||||
font/opentype
|
||||
image/svg+xml;
|
||||
|
||||
include /sites/*.conf;
|
||||
}
|
12
rutorrent/rootfs/etc/php7/php-fpm.conf
Normal file
12
rutorrent/rootfs/etc/php7/php-fpm.conf
Normal file
@ -0,0 +1,12 @@
|
||||
[www]
|
||||
user = torrent
|
||||
group = torrent
|
||||
listen = /var/run/php-fpm.sock
|
||||
listen.owner = torrent
|
||||
listen.group = torrent
|
||||
pm = dynamic
|
||||
pm.max_children = 5
|
||||
pm.start_servers = 2
|
||||
pm.min_spare_servers = 1
|
||||
pm.max_spare_servers = 3
|
||||
chdir = /
|
174
rutorrent/rootfs/etc/php7/php.ini
Normal file
174
rutorrent/rootfs/etc/php7/php.ini
Normal file
@ -0,0 +1,174 @@
|
||||
[PHP]
|
||||
engine = On
|
||||
short_open_tag = Off
|
||||
asp_tags = Off
|
||||
precision = 14
|
||||
output_buffering = 4096
|
||||
zlib.output_compression = Off
|
||||
implicit_flush = Off
|
||||
unserialize_callback_func =
|
||||
serialize_precision = 17
|
||||
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
|
||||
disable_classes =
|
||||
zend.enable_gc = On
|
||||
expose_php = Off
|
||||
max_execution_time = 30
|
||||
max_input_time = 60
|
||||
memory_limit = 128M
|
||||
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
log_errors = On
|
||||
log_errors_max_len = 1024
|
||||
ignore_repeated_errors = Off
|
||||
ignore_repeated_source = Off
|
||||
report_memleaks = On
|
||||
track_errors = Off
|
||||
html_errors = On
|
||||
variables_order = "GPCS"
|
||||
request_order = "GP"
|
||||
register_argc_argv = Off
|
||||
auto_globals_jit = On
|
||||
post_max_size = 10M
|
||||
auto_prepend_file =
|
||||
auto_append_file =
|
||||
default_mimetype = "text/html"
|
||||
default_charset = "UTF-8"
|
||||
doc_root =
|
||||
user_dir =
|
||||
enable_dl = Off
|
||||
file_uploads = On
|
||||
upload_max_filesize = 10M
|
||||
max_file_uploads = 20
|
||||
allow_url_fopen = On
|
||||
allow_url_include = Off
|
||||
default_socket_timeout = 60
|
||||
[CLI Server]
|
||||
cli_server.color = On
|
||||
[Date]
|
||||
[filter]
|
||||
[iconv]
|
||||
[intl]
|
||||
[sqlite]
|
||||
[sqlite3]
|
||||
[Pcre]
|
||||
[Pdo]
|
||||
[Pdo_mysql]
|
||||
pdo_mysql.cache_size = 2000
|
||||
pdo_mysql.default_socket=
|
||||
[Phar]
|
||||
[mail function]
|
||||
SMTP = localhost
|
||||
smtp_port = 25
|
||||
mail.add_x_header = On
|
||||
[SQL]
|
||||
sql.safe_mode = Off
|
||||
[ODBC]
|
||||
odbc.allow_persistent = On
|
||||
odbc.check_persistent = On
|
||||
odbc.max_persistent = -1
|
||||
odbc.max_links = -1
|
||||
odbc.defaultlrl = 4096
|
||||
odbc.defaultbinmode = 1
|
||||
[Interbase]
|
||||
ibase.allow_persistent = 1
|
||||
ibase.max_persistent = -1
|
||||
ibase.max_links = -1
|
||||
ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
|
||||
ibase.dateformat = "%Y-%m-%d"
|
||||
ibase.timeformat = "%H:%M:%S"
|
||||
[MySQL]
|
||||
mysql.allow_local_infile = On
|
||||
mysql.allow_persistent = On
|
||||
mysql.cache_size = 2000
|
||||
mysql.max_persistent = -1
|
||||
mysql.max_links = -1
|
||||
mysql.default_port =
|
||||
mysql.default_socket =
|
||||
mysql.default_host =
|
||||
mysql.default_user =
|
||||
mysql.default_password =
|
||||
mysql.connect_timeout = 60
|
||||
mysql.trace_mode = Off
|
||||
[MySQLi]
|
||||
mysqli.max_persistent = -1
|
||||
mysqli.allow_persistent = On
|
||||
mysqli.max_links = -1
|
||||
mysqli.cache_size = 2000
|
||||
mysqli.default_port = 3306
|
||||
mysqli.default_socket =
|
||||
mysqli.default_host =
|
||||
mysqli.default_user =
|
||||
mysqli.default_pw =
|
||||
mysqli.reconnect = Off
|
||||
[mysqlnd]
|
||||
mysqlnd.collect_statistics = On
|
||||
mysqlnd.collect_memory_statistics = Off
|
||||
[OCI8]
|
||||
[PostgreSQL]
|
||||
pgsql.allow_persistent = On
|
||||
pgsql.auto_reset_persistent = Off
|
||||
pgsql.max_persistent = -1
|
||||
pgsql.max_links = -1
|
||||
pgsql.ignore_notice = 0
|
||||
pgsql.log_notice = 0
|
||||
[Sybase-CT]
|
||||
sybct.allow_persistent = On
|
||||
sybct.max_persistent = -1
|
||||
sybct.max_links = -1
|
||||
sybct.min_server_severity = 10
|
||||
sybct.min_client_severity = 10
|
||||
[bcmath]
|
||||
bcmath.scale = 0
|
||||
[browscap]
|
||||
[Session]
|
||||
session.save_handler = files
|
||||
session.use_strict_mode = 0
|
||||
session.use_cookies = 1
|
||||
session.use_only_cookies = 1
|
||||
session.name = PHPSESSID
|
||||
session.auto_start = 0
|
||||
session.cookie_lifetime = 0
|
||||
session.cookie_path = /
|
||||
session.cookie_domain =
|
||||
session.cookie_httponly =
|
||||
session.serialize_handler = php
|
||||
session.gc_probability = 0
|
||||
session.gc_divisor = 1000
|
||||
session.gc_maxlifetime = 1440
|
||||
session.referer_check =
|
||||
session.cache_limiter = nocache
|
||||
session.cache_expire = 180
|
||||
session.use_trans_sid = 0
|
||||
session.hash_function = 0
|
||||
session.hash_bits_per_character = 5
|
||||
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
|
||||
[MSSQL]
|
||||
mssql.allow_persistent = On
|
||||
mssql.max_persistent = -1
|
||||
mssql.max_links = -1
|
||||
mssql.min_error_severity = 10
|
||||
mssql.min_message_severity = 10
|
||||
mssql.compatibility_mode = Off
|
||||
mssql.secure_connection = Off
|
||||
[Assertion]
|
||||
[COM]
|
||||
[mbstring]
|
||||
[gd]
|
||||
[exif]
|
||||
[Tidy]
|
||||
tidy.clean_output = Off
|
||||
[soap]
|
||||
soap.wsdl_cache_enabled=1
|
||||
soap.wsdl_cache_dir="/tmp"
|
||||
soap.wsdl_cache_ttl=86400
|
||||
soap.wsdl_cache_limit = 5
|
||||
[sysvshm]
|
||||
[ldap]
|
||||
ldap.max_links = -1
|
||||
[mcrypt]
|
||||
[dba]
|
||||
[opcache]
|
||||
[curl]
|
||||
[openssl]
|
||||
|
17
rutorrent/rootfs/etc/supervisor.d/supervisord.ini
Normal file
17
rutorrent/rootfs/etc/supervisor.d/supervisord.ini
Normal file
@ -0,0 +1,17 @@
|
||||
[supervisord]
|
||||
nodaemon=true
|
||||
|
||||
[program:rtorrent]
|
||||
user=torrent
|
||||
directory=/home/torrent
|
||||
priority=2
|
||||
redirect_stderr=true
|
||||
environment=HOME="/home/torrent",PWD="/home/torrent",LOGNAME="rtorrent",USER="torrent",TERM="xterm"
|
||||
startsecs=5
|
||||
command=rtorrent
|
||||
|
||||
[program:php-fpm]
|
||||
command=php-fpm7 --nodaemonize
|
||||
|
||||
[program:nginx]
|
||||
command=nginx
|
23
rutorrent/rootfs/home/torrent/.rtorrent.rc
Normal file
23
rutorrent/rootfs/home/torrent/.rtorrent.rc
Normal file
@ -0,0 +1,23 @@
|
||||
scgi_port = 0.0.0.0:5000
|
||||
encoding_list = UTF-8
|
||||
port_range = 49184-49184
|
||||
port_random = no
|
||||
check_hash = no
|
||||
directory = /data/torrents
|
||||
session = /data/.session
|
||||
encryption = require,require_RC4,allow_incoming,try_outgoing
|
||||
use_udp_trackers = yes
|
||||
dht = off
|
||||
peer_exchange = no
|
||||
min_peers = 1
|
||||
max_peers = 100
|
||||
min_peers_seed = 1
|
||||
max_peers_seed = 50
|
||||
max_uploads = 15
|
||||
|
||||
execute = {sh,-c,/usr/bin/php7 /var/www/torrent/php/initplugins.php torrent &}
|
||||
schedule = watch_directory,1,1,"load_start=/data/.watch/*.torrent"
|
||||
schedule = untied_directory,5,5,"stop_untied=/data/.watch/*.torrent"
|
||||
schedule = espace_disque_insuffisant,1,30,close_low_diskspace=500M
|
||||
system.method.set_key=event.download.finished,filebot,"execute={/usr/bin/postdl,$d.get_base_path=,$d.get_name=,$d.get_custom1=}"
|
||||
system.method.set_key=event.download.erased,filebot_cleaner,"execute={/usr/bin/postrm}"
|
48
rutorrent/rootfs/sites/rutorrent.conf
Normal file
48
rutorrent/rootfs/sites/rutorrent.conf
Normal file
@ -0,0 +1,48 @@
|
||||
server {
|
||||
listen 80 default_server;
|
||||
server_name _;
|
||||
|
||||
charset utf-8;
|
||||
index index.html index.php;
|
||||
client_max_body_size 10M;
|
||||
|
||||
access_log /var/log/nginx/rutorrent-access.log combined;
|
||||
error_log /var/log/nginx/rutorrent-error.log error;
|
||||
|
||||
error_page 500 502 503 504 /50x.html;
|
||||
location = /50x.html { root /usr/share/nginx/html; }
|
||||
root /var/www;
|
||||
|
||||
location = /favicon.ico {
|
||||
access_log off;
|
||||
log_not_found off;
|
||||
}
|
||||
|
||||
location ^~ <webroot> {
|
||||
root /var/www<folder>;
|
||||
include /etc/nginx/conf.d/php.conf;
|
||||
include /etc/nginx/conf.d/cache.conf;
|
||||
|
||||
location ~ /\.svn {
|
||||
deny all;
|
||||
}
|
||||
|
||||
location ~ /\.ht {
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
|
||||
location /RPC {
|
||||
include scgi_params;
|
||||
scgi_pass 127.0.0.1:5000;
|
||||
}
|
||||
|
||||
location ^~ <folder>/conf/ {
|
||||
deny all;
|
||||
}
|
||||
|
||||
location ^~ <folder>/share/ {
|
||||
deny all;
|
||||
}
|
||||
|
||||
}
|
10
rutorrent/rootfs/usr/bin/postdl
Normal file
10
rutorrent/rootfs/usr/bin/postdl
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
# rtorrent.rc
|
||||
# system.method.set_key=event.download.finished,filebot,"execute={rtorrent-postprocess.sh,$d.get_base_path=,$d.get_name=,$d.get_custom1=}"
|
||||
|
||||
TORRENT_PATH="$1"
|
||||
TORRENT_NAME="$2"
|
||||
TORRENT_LABEL="$3"
|
||||
|
||||
/filebot/filebot.sh -script fn:amc --output "/data/Media" --action symlink --conflict skip -non-strict --log-file amc.log --def excludeList=amc.excludes unsorted=y music=y "seriesFormat=/data/Media/TV/{n}/Season {s.pad(2)}/{s00e00} - {t}" "animeFormat=/data/Media/Animes/{n}/{e.pad(3)} - {t}" "movieFormat=/data/Media/Movies/{n}" "musicFormat=/data/Media/Music/{n}/{fn}" "ut_dir=$TORRENT_PATH" "ut_kind=multi" "ut_title=$TORRENT_NAME" "ut_label=$TORRENT_LABEL" &
|
3
rutorrent/rootfs/usr/bin/postrm
Normal file
3
rutorrent/rootfs/usr/bin/postrm
Normal file
@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
/filebot/filebot.sh -script fn:cleaner /data/Media
|
29
rutorrent/rootfs/usr/bin/startup
Normal file
29
rutorrent/rootfs/usr/bin/startup
Normal file
@ -0,0 +1,29 @@
|
||||
#!/bin/sh
|
||||
addgroup -g ${GID} torrent && adduser -h /home/torrent -s /bin/sh -G torrent -D -u ${UID} torrent
|
||||
|
||||
mkdir -p /data/torrents
|
||||
mkdir -p /data/.watch
|
||||
mkdir -p /data/.session
|
||||
mkdir -p /data/Media/Movies
|
||||
mkdir -p /data/Media/TV
|
||||
mkdir -p /data/Media/Animes
|
||||
mkdir -p /data/Media/Music
|
||||
|
||||
if [ $WEBROOT != "/" ]; then
|
||||
sed -i 's|<webroot>|'${WEBROOT}'|g' /sites/rutorrent.conf
|
||||
sed -i 's|<folder>||g' /sites/rutorrent.conf
|
||||
mv /var/www/torrent /var/www${WEBROOT}
|
||||
else
|
||||
sed -i 's|<webroot>|/|g' /sites/rutorrent.conf
|
||||
sed -i 's|<folder>|/torrent|g' /sites/rutorrent.conf
|
||||
fi
|
||||
|
||||
chown -R torrent:torrent /data
|
||||
chown -R torrent:torrent /var/www
|
||||
chown -R torrent:torrent /home/torrent
|
||||
chown -R torrent:torrent /var/lib/nginx
|
||||
chown -R torrent:torrent /filebot
|
||||
|
||||
rm -f /data/.session/rtorrent.lock
|
||||
|
||||
/usr/bin/supervisord -c /etc/supervisord.conf
|
36
rutorrent/rootfs/var/www/torrent/conf/config.php
Normal file
36
rutorrent/rootfs/var/www/torrent/conf/config.php
Normal file
@ -0,0 +1,36 @@
|
||||
<?php
|
||||
@define('HTTP_USER_AGENT', 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0', true);
|
||||
@define('HTTP_TIME_OUT', 30, true);
|
||||
@define('HTTP_USE_GZIP', true, true);
|
||||
$httpIP = null;
|
||||
@define('RPC_TIME_OUT', 5, true);
|
||||
@define('LOG_RPC_CALLS', false, true);
|
||||
@define('LOG_RPC_FAULTS', true, true);
|
||||
@define('PHP_USE_GZIP', false, true);
|
||||
@define('PHP_GZIP_LEVEL', 2, true);
|
||||
$schedule_rand = 10;
|
||||
$do_diagnostic = true;
|
||||
$log_file = '/tmp/errors.log';
|
||||
$saveUploadedTorrents = true;
|
||||
$overwriteUploadedTorrents = false;
|
||||
$topDirectory = '/data/torrents';
|
||||
$forbidUserSettings = false;
|
||||
$scgi_port = 5000;
|
||||
$scgi_host = "127.0.0.1";
|
||||
$XMLRPCMountPoint = "/RPC";
|
||||
$pathToExternals = array(
|
||||
"php" => '/usr/bin/php7',
|
||||
"curl" => '/usr/bin/curl',
|
||||
"gzip" => '/usr/bin/gzip',
|
||||
"id" => '/usr/bin/id',
|
||||
"stat" => '/usr/bin/stat',
|
||||
);
|
||||
$localhosts = array(
|
||||
"127.0.0.1",
|
||||
"localhost",
|
||||
);
|
||||
$profilePath = '../share';
|
||||
$profileMask = 0777;
|
||||
$tempDirectory = null;
|
||||
$canUseXSendFile = true;
|
||||
$locale = "UTF8";
|
20
rutorrent/rootfs/var/www/torrent/conf/plugins.ini
Normal file
20
rutorrent/rootfs/var/www/torrent/conf/plugins.ini
Normal file
@ -0,0 +1,20 @@
|
||||
[default]
|
||||
enabled = user-defined
|
||||
canChangeToolbar = yes
|
||||
canChangeMenu = yes
|
||||
canChangeOptions = yes
|
||||
canChangeTabs = yes
|
||||
canChangeColumns = yes
|
||||
canChangeStatusBar = yes
|
||||
canChangeCategory = yes
|
||||
canBeShutdowned = yes
|
||||
[ipad]
|
||||
enabled = no
|
||||
[httprpc]
|
||||
enabled = no
|
||||
[retrackers]
|
||||
enabled = no
|
||||
[rpc]
|
||||
enabled = no
|
||||
[rutracker_check]
|
||||
enabled = no
|
5
rutorrent/rootfs/var/www/torrent/plugins/create/conf.php
Normal file
5
rutorrent/rootfs/var/www/torrent/plugins/create/conf.php
Normal file
@ -0,0 +1,5 @@
|
||||
<?php
|
||||
|
||||
$useExternal = 'mktorrent';
|
||||
$pathToCreatetorrent = '/usr/local/bin/mktorrent';
|
||||
$recentTrackersMaxCount = 15;
|
@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
$fm['tempdir'] = '/tmp'; // path were to store temporary data ; must be writable
|
||||
$fm['mkdperm'] = 755; // default permission to set to new created directories
|
||||
|
||||
$pathToExternals['rar'] = '/usr/bin/rar';
|
||||
$pathToExternals['zip'] = '/usr/bin/zip';
|
||||
$pathToExternals['unzip'] = '/usr/bin/unzip';
|
||||
$pathToExternals['tar'] = '/bin/tar';
|
||||
$pathToExternals['gzip'] = '/bin/gzip';
|
||||
$pathToExternals['bzip2'] = '/bin/bzip2';
|
||||
|
||||
$fm['archive']['types'] = array('rar', 'zip', 'tar', 'gzip', 'bzip2');
|
||||
$fm['archive']['compress'][0] = range(0, 5);
|
||||
$fm['archive']['compress'][1] = array('-0', '-1', '-9');
|
||||
$fm['archive']['compress'][2] = $fm['archive']['compress'][3] = $fm['archive']['compress'][4] = array(0);
|
||||
|
||||
?>
|
Reference in New Issue
Block a user