diff --git a/lutim/Dockerfile b/lutim/Dockerfile deleted file mode 100644 index 7ebdb18..0000000 --- a/lutim/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM debian:jessie -MAINTAINER Wonderfall - -ARG TINI_VER=0.9.0 - -ENV USERID=1000 \ - GROUPID=1000 \ - SECRET=ZyCnLAhYKBIJrukuKZZJ \ - CONTACT=contact@domain.tld \ - MAX_FILE_SIZE=100000000 \ - WEBROOT=/ \ - DOMAIN=domain.tld - -RUN apt-get update && apt-get install -y --no-install-recommends --no-install-suggests \ - wget \ - git \ - perl \ - make \ - gcc \ - ca-certificates \ - libssl-dev \ - shared-mime-info \ - perlmagick \ - && cpan install Carton \ - && git clone https://framagit.org/luc/lutim.git --depth=1 \ - && cd /lutim \ - && carton install \ - && wget -q https://github.com/krallin/tini/releases/download/v$TINI_VER/tini_$TINI_VER.deb -P /tmp \ - && dpkg -i /tmp/tini_$TINI_VER.deb \ - && apt-get purge -y \ - wget \ - git \ - make \ - gcc \ - libssl-dev \ - ca-certificates \ - && apt-get autoremove --purge -y && apt-get clean \ - && rm -rf /var/lib/apt/lists/* /root/.cpan* /lutim/local/cache/* /lutim/utilities /tmp/* - -COPY run.sh /usr/local/bin/run.sh -COPY lutim.conf /lutim/lutim.conf - -RUN chmod +x /usr/local/bin/run.sh - -EXPOSE 8181 -VOLUME /data /lutim/files -CMD ["tini","--","run.sh"] diff --git a/lutim/README.md b/lutim/README.md deleted file mode 100644 index 692e048..0000000 --- a/lutim/README.md +++ /dev/null @@ -1,31 +0,0 @@ -## wonderfall/lutim - -![](https://i.goopics.net/rf.png) - -#### What is this? -LUTIM means Let's Upload That Image. -It stores images and allows you to see them, download them or share them on social networks. From version 0.5, the gif images can be displayed as animated gifs in Twitter, but you need a HTTPS server (Twitter requires that. Lutim detects if you have a HTTPS server and displays an static image twitter card if you don't); - -Images are indefinitly stored unless you request that they will be deleted at first view or after 24 hours / one week / one month / one year. - -#### Build-time variables -- **TINI_VER** : version of `tini`. - -#### Environment variables -- **GROUPID** : lutim group id. *(default : 1000)* -- **USERID** : lutim user id. *(default : 1000)* -- **SECRET** : random string used to encrypt cookies. *(default : ZyCnLAhYKBIJrukuKZZJ)* -- **CONTACT** : lutim contact. *(default : contact@domain.tld)* -- **MAX_FILE_SIZE** : maximum file size of an uploaded file in bytes. *(default : 1GB)* -- **WEBROOT** : webroot of lutim. *(default : /)* -- **DOMAIN** : your domain used with lutim *(default : domain.tld)* - -*Tip : you can use the following command to generate SECRET.* -`cat /dev/urandom | tr -dc 'a-zA-Z' | fold -w 20 | head -n 1` - -#### Volumes -- **/data** : where lutim's database is stored. -- **/lutim/files** : location of uploaded files. - -#### Ports -- **8181** [(reverse proxy!)](https://github.com/hardware/mailserver/wiki/Reverse-proxy-configuration). \ No newline at end of file diff --git a/lutim/lutim.conf b/lutim/lutim.conf deleted file mode 100644 index ba421f2..0000000 --- a/lutim/lutim.conf +++ /dev/null @@ -1,24 +0,0 @@ -{ - hypnotoad => { - listen => ['http://0.0.0.0:8181'], - }, - contact => '', - secrets => [''], - length => 8, - crypto_key_length => 8, - provis_step => 5, - provisioning => 100, - anti_flood_delay => 5, - max_file_size => , - allowed_domains => ['http://', 'https://'], - default_delay => 1, - max_delay => 0, - always_encrypt => 1, - token_length => 24, - stats_day_num => 365, - keep_ip_during => 365, - policy_when_full => 'warn', - prefix => '', - db_path => '/data/lutim.db', - delete_no_longer_viewed_files => 90 -}; diff --git a/lutim/run.sh b/lutim/run.sh deleted file mode 100644 index b369ea1..0000000 --- a/lutim/run.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -deluser lutim -addgroup --gid $GROUPID lutim -adduser --system --shell /bin/sh --no-create-home --ingroup lutim --uid $USERID lutim -sed -i -e 's//'$CONTACT'/g' \ - -e 's//'$SECRET'/g' \ - -e 's//'$MAX_FILE_SIZE'/g' \ - -e 's//'$DOMAIN'/g' \ - -e 's||'$WEBROOT'|g' /lutim/lutim.conf -chown -R lutim:lutim /lutim /data -cd /lutim && exec su lutim -c "carton exec hypnotoad -f /lutim/script/lutim" diff --git a/nginx/Dockerfile b/nginx/Dockerfile deleted file mode 100644 index 7c185f1..0000000 --- a/nginx/Dockerfile +++ /dev/null @@ -1,124 +0,0 @@ -FROM alpine:3.4 -MAINTAINER Wonderfall - -ENV UID=991 GID=991 - -ARG NGINX_VERSION=1.11.4 -ARG LIBRESSL_VERSION=2.5.0 -ARG GPG_LIBRESSL="A1EB 079B 8D3E B92B 4EBD 3139 663A F51B D5E4 D8D5" -ARG GPG_NGINX="B0F4 2533 73F8 F6F5 10D4 2178 520A 9993 A1C0 52F8" -ARG BUILD_CORES - -RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \ - && NB_CORES=${BUILD_CORES-$(getconf _NPROCESSORS_CONF)} \ - && BUILD_DEPS=" \ - build-base \ - linux-headers \ - ca-certificates \ - automake \ - autoconf \ - git \ - tar \ - libtool \ - pcre-dev \ - zlib-dev \ - binutils \ - gnupg" \ - && apk -U add \ - ${BUILD_DEPS} \ - pcre \ - zlib \ - libgcc \ - libstdc++ \ - su-exec \ - openssl \ - bind-tools \ - tini@commuedge \ - && cd /tmp \ - && git clone https://github.com/bagder/libbrotli --depth=1 && cd libbrotli \ - && ./autogen.sh && ./configure && make -j ${NB_CORES} && make install \ - && cd /tmp \ - && git clone https://github.com/google/ngx_brotli --depth=1 \ - && git clone https://github.com/openresty/headers-more-nginx-module --depth=1 \ - && LIBRESSL_TARBALL="libressl-${LIBRESSL_VERSION}.tar.gz" \ - && wget -q http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${LIBRESSL_TARBALL} \ - && echo "Verifying ${LIBRESSL_TARBALL} using GPG..." \ - && wget -q http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${LIBRESSL_TARBALL}.asc \ - && wget -q http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl.asc \ - && gpg --import libressl.asc \ - && FINGERPRINT="$(LANG=C gpg --verify ${LIBRESSL_TARBALL}.asc ${LIBRESSL_TARBALL} 2>&1 \ - | sed -n "s#Primary key fingerprint: \(.*\)#\1#p")" \ - && if [ -z "${FINGERPRINT}" ]; then echo "Warning! Invalid GPG signature!" && exit 1; fi \ - && if [ "${FINGERPRINT}" != "${GPG_LIBRESSL}" ]; then echo "Warning! Wrong GPG fingerprint!" && exit 1; fi \ - && echo "All seems good, now unpacking ${LIBRESSL_TARBALL}..." \ - && tar xzf ${LIBRESSL_TARBALL} \ - && NGINX_TARBALL="nginx-${NGINX_VERSION}.tar.gz" \ - && wget -q https://nginx.org/download/${NGINX_TARBALL} \ - && echo "Verifying ${NGINX_TARBALL} using GPG..." \ - && wget -q https://nginx.org/download/${NGINX_TARBALL}.asc \ - && wget -q https://nginx.org/keys/mdounin.key \ - && gpg --import mdounin.key \ - && FINGERPRINT="$(LANG=C gpg --verify ${NGINX_TARBALL}.asc ${NGINX_TARBALL} 2>&1 \ - | sed -n "s#Primary key fingerprint: \(.*\)#\1#p")" \ - && if [ -z "${FINGERPRINT}" ]; then echo "Warning! Invalid GPG signature!" && exit 1; fi \ - && if [ "${FINGERPRINT}" != "${GPG_NGINX}" ]; then echo "Warning! Wrong GPG fingerprint!" && exit 1; fi \ - && echo "All seems good, now unpacking ${NGINX_TARBALL}..." \ - && tar xzf ${NGINX_TARBALL} && cd nginx-${NGINX_VERSION} \ - && wget -q https://raw.githubusercontent.com/felixbuenemann/sslconfig/updated-nginx-1.9.15-spdy-patch/patches/nginx_1_9_15_http2_spdy.patch -O spdy.patch \ - && patch -p1 < spdy.patch \ - && wget -q https://raw.githubusercontent.com/cloudflare/sslconfig/master/patches/nginx__dynamic_tls_records.patch \ - && patch -p1 < nginx__dynamic_tls_records.patch \ - && ./configure \ - --prefix=/etc/nginx \ - --sbin-path=/usr/sbin/nginx \ - --with-cc-opt='-O3 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wno-deprecated-declarations' \ - --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro' \ - --with-openssl=/tmp/libressl-${LIBRESSL_VERSION} \ - --with-http_ssl_module \ - --with-http_v2_module \ - --with-http_spdy_module \ - --with-http_gzip_static_module \ - --with-http_stub_status_module \ - --with-file-aio \ - --with-threads \ - --with-pcre-jit \ - --without-http_ssi_module \ - --without-http_scgi_module \ - --without-http_uwsgi_module \ - --without-http_geo_module \ - --without-http_autoindex_module \ - --without-http_map_module \ - --without-http_split_clients_module \ - --without-http_memcached_module \ - --without-http_empty_gif_module \ - --without-http_browser_module \ - --http-log-path=/var/log/nginx/access.log \ - --error-log-path=/var/log/nginx/error.log \ - --add-module=/tmp/headers-more-nginx-module \ - --add-module=/tmp/ngx_brotli \ - && make -j ${NB_CORES} && make install && make clean \ - && strip -s /usr/sbin/nginx \ - && apk del ${BUILD_DEPS} \ - && rm -rf /tmp/* /var/cache/apk/* /root/.gnupg - -COPY nginx.conf /etc/nginx/conf/nginx.conf -COPY run.sh /usr/local/bin/run.sh -COPY ngxpasswd /usr/local/bin/ngxpasswd -COPY ngxproxy /usr/local/bin/ngxproxy -COPY vhost_http.conf /etc/nginx/conf/vhost_http.conf -COPY vhost_https.conf /etc/nginx/conf/vhost_https.conf -COPY ssl_params /etc/nginx/conf/ssl_params -COPY headers_params /etc/nginx/conf/headers_params -COPY proxy_params /etc/nginx/conf/proxy_params - -RUN chmod +x /usr/local/bin/* - -EXPOSE 8000 4430 - -VOLUME /sites-enabled /www /conf.d /passwds /certs /var/log/nginx - -LABEL description="nginx built from source." \ - openssl="LibreSSL ${LIBRESSL_VERSION}." \ - nginx="nginx ${NGINX_VERSION}." - -CMD ["run.sh"] diff --git a/nginx/README.md b/nginx/README.md deleted file mode 100644 index fa65095..0000000 --- a/nginx/README.md +++ /dev/null @@ -1,56 +0,0 @@ -## wonderfall/nginx - -![](https://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Nginx_logo.svg/115px-Nginx_logo.svg.png) - -#### What is this? -It is nginx statically linked against LibreSSL, with the following modules embedded : ngx_brotli (Brotli compression support) and headers_more. Secured by default (no root processes, even the master one), so it should be safe to use. - -#### Features -- Based on Alpine Linux Edge. -- nginx built against **LibreSSL**. -- nginx : Cloudfare's SPDY patch. -- nginx : Cloudfare's dynamic TLS records patch. -- nginx : securely built using hardening gcc flags. -- nginx : HTTP/2 (+NPN) support. -- nginx : Brotli compression support (and configured). -- nginx : Headers More module. -- nginx : no root master process. -- nginx : AIO Threads support. -- nginx : no unnessary modules (except fastcgi). -- nginx : pcre-jit enabled. -- nginx : optimized configuration. -- ngxpasswd : generates a htpasswd file easily. -- ngxproxy : generates a *proxy vhost* after asking you a few questions. - -#### Notes -It is required to chown your certs files with the right uid/pid and change the `listen` directive to 8000/4430 instead of 80/443. Linux 3.17+, and the latest Docker stable are recommended. - -#### Volumes -- **/sites-enabled** : vhosts files (*.conf) -- **/conf.d** : additional configuration files -- **/certs** : SSL/TLS certificates -- **/var/log/nginx** : nginx logs -- **/passwds** : authentication files -- **/www** : put your websites there - -#### Build-time variables -- **NGINX_VERSION** : version of nginx -- **LIBRESSL_VERSION** : version of LibreSSL -- **GPG_NGINX** : fingerprint of signing key package -- **GPG_LIBRESSL** : fingerprint of signing key package -- **BUILD_CORES** : number of cores you'd like to build with (default : all) - -#### Environment variables -- **GID** : nginx group id *(default : 991)* -- **UID** : nginx user id *(default : 991)* - -#### How to use it? -https://github.com/hardware/mailserver/wiki/Reverse-proxy-configuration - -You can use `ngxproxy` to generate a *vhost* through an easy process : `docker exec -ti nginx ngxproxy`. `ngxpasswd` can generate htpasswd files : `docker exec -ti nginx ngxpasswd`. Both utilites are interactive so you won't feel lost. - -Some configuration files located in `/etc/nginx/conf` are already provided, you can use them with the `include` directive. - -- `ssl_params` : Provides a nice balance between compatibility and security. -- `headers_params` : HSTS (+ preload), XSS protection, etc. -- `proxy_params` : use with `proxy_pass`. diff --git a/nginx/headers_params b/nginx/headers_params deleted file mode 100644 index 30e1890..0000000 --- a/nginx/headers_params +++ /dev/null @@ -1,3 +0,0 @@ -add_header X-Frame-Options SAMEORIGIN; -add_header X-Content-Type-Options nosniff; -add_header X-XSS-Protection "1; mode=block"; diff --git a/nginx/nginx.conf b/nginx/nginx.conf deleted file mode 100644 index 352cd59..0000000 --- a/nginx/nginx.conf +++ /dev/null @@ -1,87 +0,0 @@ -worker_processes auto; -pid /tmp/nginx.pid; -daemon off; -pcre_jit on; - -events { - worker_connections 2048; - use epoll; -} - -http { - limit_conn_zone $binary_remote_addr zone=limit_per_ip:10m; - limit_conn limit_per_ip 128; - limit_req_zone $binary_remote_addr zone=allips:10m rate=150r/s; - limit_req zone=allips burst=150 nodelay; - - more_set_headers 'Server: secret'; - - include /etc/nginx/conf/mime.types; - default_type application/octet-stream; - - access_log /var/log/nginx/access.log combined; - error_log /var/log/nginx/error.log crit; - - fastcgi_temp_path /tmp/fastcgi 1 2; - proxy_temp_path /tmp/proxy 1 2; - client_body_temp_path /tmp/client_body 1 2; - - client_body_buffer_size 10K; - client_header_buffer_size 1k; - client_max_body_size 8m; - large_client_header_buffers 2 1k; - - aio threads; - sendfile on; - keepalive_timeout 15; - keepalive_disable msie6; - keepalive_requests 100; - tcp_nopush on; - tcp_nodelay on; - 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; - - brotli on; - brotli_static on; - brotli_buffers 16 8k; - brotli_comp_level 6; - brotli_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-enabled/*.conf; -} diff --git a/nginx/ngxpasswd b/nginx/ngxpasswd deleted file mode 100644 index 70e5bf6..0000000 --- a/nginx/ngxpasswd +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh - -echo -echo "Welcome to ngxpasswd utility." -echo "We're about to create a password file." -echo - -cd /passwds || exit 1 - -while [ "$NAME" == "" ]; do - read -p "Name: " NAME -done - -if [ -f "/passwds/$NAME.htpasswd" ]; then - echo "ERROR: /passwds/$NAME.htpasswd already exists." - exit 1 -fi - -while [ "$USER" == "" ]; do - read -p "User: " USER -done - -read -p "Password (leave blank to generate one): " PASSWORD - -if [ "$PASSWORD" == "" ]; then - echo "Password was not defined, generating a random one..." - PASSWORD=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 20 | head -n 1) -elif [ ${#PASSWORD} -le 6 ]; then - echo "WARNING: Non-secure password." -fi - -echo -n $USER:$(openssl passwd -apr1 $PASSWORD) >> $NAME.htpasswd -chown $UID:$GID $NAME.htpasswd -chmod 640 $NAME.htpasswd - -echo -echo "A new password file has been saved to /passwds/$NAME.htpasswd :" -echo "- Service : $NAME" -echo "- User : $USER" -echo "- Password : $PASSWORD" -echo - -if [ -f "/sites-enabled/$NAME.conf" ] && grep -q '#auth' /sites-enabled/$NAME.conf; then - echo "vhost at /sites-enabled/$NAME.conf detected." - - while [[ "$ADD" != "y" && "$ADD" != "n" ]]; do - read -p "Add authentication to $NAME.conf? [y/n]: " ADD - done - - if [ "$ADD" == "y" ]; then - cd /etc/nginx/conf - sed -i -e 's/#auth/auth/g' -e "s//$NAME/g" /sites-enabled/$NAME.conf - echo "Automatically added, please verify. Otherwise follow these instructions." - echo - fi -fi - -echo "Paste this to your vhost in order to enable auth :" -echo " auth_basic \"Who's this?\";" -echo " auth_basic_user_file /passwds/$NAME.htpasswd;" -echo - -if [ "$ADD" == "y" ]; then - while [[ "$RELOAD" != "y" && "$RELOAD" != "n" ]]; do - read -p "Reload nginx now? [y/n]: " RELOAD - done - - if [ "$RELOAD" == "y" ]; then - su-exec $UID:$GID nginx -s reload - echo "nginx successfully reloaded." - else - echo "Restart manually nginx to enable authentication." - fi -fi - -exit 0 diff --git a/nginx/ngxproxy b/nginx/ngxproxy deleted file mode 100644 index 11e106a..0000000 --- a/nginx/ngxproxy +++ /dev/null @@ -1,139 +0,0 @@ -#!/bin/sh - -echo -echo "Welcome to ngxproxy utility." -echo "We're about to create a new virtual host (AKA server block)." -echo - -while [ "$NAME" == "" ]; do - read -p "Name: " NAME -done - -if [ -f "/sites-enabled/$NAME.conf" ]; then - echo "ERROR: /sites-enabled/$NAME.conf already exists." - exit 1 -fi - -while [ "$DOMAIN" == "" ]; do - read -p "Domain: " DOMAIN -done - -if [ "$(dig +short $DOMAIN)" == "" ]; then - echo "WARNING: $DOMAIN couldn't be resolved: it may not work!" - echo "HINT: Is this domain correct? Did you update your DNS zone?" -fi - -read -p "Webroot (default is /): " WEBROOT - -if [ "$WEBROOT" == "" ]; then - WEBROOT="/" -elif [ "$WEBROOT" != "/" ]; then - echo "WARNING: You might have to add a proxy header to get your custom webroot working." - - while [[ "$CONFIGURE_WEBROOT" != "y" && "$CONFIGURE_WEBROOT" != "n" ]]; do - read -p "Is it required (by the app) to configure it? [y/n]: " CONFIGURE_WEBROOT - done - - if [ "$CONFIGURE_WEBROOT" == "y" ]; then - while [ "$WEBROOT_HEADER" == "" ]; do - read -p "Type the required proxy_set_header (like X-Script-Name): " WEBROOT_HEADER - done - fi -fi - -while [ "$CONTAINER" == "" ]; do - read -p "Container: " CONTAINER -done - -ping -c 1 $CONTAINER >/dev/null 2>&1 - -if [ "$?" != "0" ]; then - echo "WARNING: $CONTAINER seems to be unavailable. It may not work!" - echo "HINT: Did you correctly link the container?" -fi - -read -p "Port (default is 80): " PORT - -if [ "$PORT" == "" ]; then - PORT="80" -elif ! [ "$PORT" -eq "$PORT" ] 2>/dev/null; then - echo "ERROR: an integer value was expected." - exit 1 -elif [ "$PORT" -gt "65535" ]; then - echo "ERROR: $PORT exceeds the maximum TCP port which is 65535" - exit 1 -fi - -while [[ "$HTTPS" != "y" && "$HTTPS" != "n" ]]; do - read -p "HTTPS [y/n]: " HTTPS -done - -if [ "$HTTPS" == "y" ]; then - while [ ! -f "$CERTIFICATE_PATH" ]; do - read -p "Certificate path: " CERTIFICATE_PATH - done - - while [ ! -f "$KEY_PATH" ]; do - read -p "Certificate key path: " KEY_PATH - done - - cp -f /etc/nginx/conf/vhost_https.conf /tmp/${NAME}.conf - - sed -i \ - -e "s||$CERTIFICATE_PATH|g" \ - -e "s||$KEY_PATH|g" \ - /tmp/$NAME.conf - - while [[ "$HEADERS" != "y" && "$HEADERS" != "n" ]]; do - read -p "Secure headers [y/n]: " HEADERS - done - - if [ "$HEADERS" == "y" ]; then - sed -i 's|#include /etc/nginx/conf/headers_params|include /etc/nginx/conf/headers_params|g' /tmp/$NAME.conf - fi -else - cp -f /etc/nginx/conf/vhost_http.conf /tmp/${NAME}.conf -fi - -while [ "$MAX_BODY_SIZE" == "" ]; do - read -p "Max body size in MB (integer/n): " MAX_BODY_SIZE -done - -if ! [ "$MAX_BODY_SIZE" -eq "$MAX_BODY_SIZE" ] 2>/dev/null && [ "$MAX_BODY_SIZE" != "n" ]; then - echo "ERROR: Incorrect value." - exit 1 -fi - -if [ "$MAX_BODY_SIZE" != "n" ]; then - sed -i "s|#client_max_body_size |client_max_body_size $MAX_BODY_SIZE|g" /tmp/$NAME.conf -fi - -if [ "$CONFIGURE_WEBROOT" == "y" ]; then - sed -i "/proxy_pass/a \ \ \ \ proxy_set_header $WEBROOT_HEADER $WEBROOT;" /tmp/$NAME.conf -fi - -sed -i \ - -e "s||$DOMAIN|g" \ - -e "s||$CONTAINER|g" \ - -e "s||$PORT|g" \ - -e "s||$WEBROOT|g" \ - /tmp/$NAME.conf - -mv /tmp/$NAME.conf /sites-enabled/ - -echo -echo "Done! $NAME.conf has been generated." - -while [[ "$RELOAD" != "y" && "$RELOAD" != "n" ]]; do - read -p "Reload nginx now? [y/n]: " RELOAD -done - -if [ "$RELOAD" == "y" ]; then - su-exec $UID:$GID nginx -s reload - echo "nginx successfully reloaded." -else - echo "Restart manually nginx to enable this new vhost." -fi - -echo -exit 0 diff --git a/nginx/proxy_params b/nginx/proxy_params deleted file mode 100644 index 6f9827e..0000000 --- a/nginx/proxy_params +++ /dev/null @@ -1,6 +0,0 @@ -proxy_set_header Host $host; -proxy_set_header X-Real-IP $remote_addr; -proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; -proxy_set_header X-Remote-Port $remote_port; -proxy_set_header X-Forwarded-Proto $scheme; -proxy_redirect off; diff --git a/nginx/run.sh b/nginx/run.sh deleted file mode 100644 index ddfb1be..0000000 --- a/nginx/run.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -chown -R $UID:$GID /etc/nginx /var/log/nginx /sites-enabled /conf.d /certs /www /tmp -chmod -R 700 /certs -exec su-exec $UID:$GID /sbin/tini -- nginx diff --git a/nginx/ssl_params b/nginx/ssl_params deleted file mode 100644 index 62ff6ed..0000000 --- a/nginx/ssl_params +++ /dev/null @@ -1,10 +0,0 @@ -ssl_protocols TLSv1.2; -ssl_ecdh_curve secp384r1; -ssl_ciphers ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256; -ssl_prefer_server_ciphers on; - -ssl_session_cache shared:SSL:20m; -ssl_session_timeout 15m; -ssl_session_tickets off; - -add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"; diff --git a/nginx/vhost_http.conf b/nginx/vhost_http.conf deleted file mode 100644 index 7e3a99b..0000000 --- a/nginx/vhost_http.conf +++ /dev/null @@ -1,14 +0,0 @@ -server { - listen 8000; - server_name ; - - #client_max_body_size M; - - #auth_basic "Who's this?"; - #auth_basic_user_file /passwds/.htpasswd; - - location { - proxy_pass http://:; - include /etc/nginx/conf/proxy_params; - } -} diff --git a/nginx/vhost_https.conf b/nginx/vhost_https.conf deleted file mode 100644 index ebe2481..0000000 --- a/nginx/vhost_https.conf +++ /dev/null @@ -1,26 +0,0 @@ -server { - listen 8000; - server_name ; - return 301 https://$host$request_uri; -} - -server { - listen 4430 ssl spdy http2; - server_name ; - - ssl_certificate ; - ssl_certificate_key ; - - include /etc/nginx/conf/ssl_params; - include /etc/nginx/conf/headers_params; - - #client_max_body_size M; - - #auth_basic "Who's this?"; - #auth_basic_user_file /passwds/.htpasswd; - - location { - proxy_pass http://:; - include /etc/nginx/conf/proxy_params; - } -} diff --git a/rainloop/Dockerfile b/rainloop/Dockerfile deleted file mode 100644 index f5797da..0000000 --- a/rainloop/Dockerfile +++ /dev/null @@ -1,55 +0,0 @@ -FROM alpine:3.4 -MAINTAINER Wonderfall - -ARG GPG_rainloop="3B79 7ECE 694F 3B7B 70F3 11A4 ED7C 49D9 87DA 4591" - -ENV UID=991 GID=991 - -RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \ - && apk -U add \ - gnupg \ - nginx \ - s6 \ - su-exec \ - php7-fpm@commuedge \ - php7-curl@commuedge \ - php7-iconv@commuedge \ - php7-xml@commuedge \ - php7-dom@commuedge \ - php7-openssl@commuedge \ - php7-json@commuedge \ - php7-zlib@commuedge \ - php7-pdo_mysql@commuedge \ - php7-pdo_pgsql@commuedge \ - php7-pdo_sqlite@commuedge \ - php7-sqlite3@commuedge \ - - && cd /tmp \ - && wget -q http://repository.rainloop.net/v2/webmail/rainloop-community-latest.zip \ - && wget -q http://repository.rainloop.net/v2/webmail/rainloop-community-latest.zip.asc \ - && wget -q http://repository.rainloop.net/RainLoop.asc \ - && echo "Verifying authenticity of rainloop-community-latest.zip using GPG..." \ - && gpg --import RainLoop.asc \ - && FINGERPRINT="$(LANG=C gpg --verify rainloop-community-latest.zip.asc rainloop-community-latest.zip 2>&1 \ - | sed -n "s#Primary key fingerprint: \(.*\)#\1#p")" \ - && if [ -z "${FINGERPRINT}" ]; then echo "Warning! Invalid GPG signature!" && exit 1; fi \ - && if [ "${FINGERPRINT}" != "${GPG_rainloop}" ]; then echo "Warning! Wrong GPG fingerprint!" && exit 1; fi \ - && echo "All seems good, now unzipping rainloop-community-latest.zip..." \ - && mkdir /rainloop && unzip -q /tmp/rainloop-community-latest.zip -d /rainloop \ - && find /rainloop -type d -exec chmod 755 {} \; \ - && find /rainloop -type f -exec chmod 644 {} \; \ - && apk del gnupg \ - && rm -rf /tmp/* /var/cache/apk/* /root/.gnupg - -COPY nginx.conf /etc/nginx/nginx.conf -COPY php-fpm.conf /etc/php7/php-fpm.conf -COPY s6.d /etc/s6.d -COPY run.sh /usr/local/bin/run.sh - -RUN chmod +x /usr/local/bin/run.sh /etc/s6.d/*/* /etc/s6.d/.s6-svscan/* - -VOLUME /rainloop/data - -EXPOSE 8888 - -CMD ["run.sh"] diff --git a/rainloop/README.md b/rainloop/README.md deleted file mode 100644 index d16ef4e..0000000 --- a/rainloop/README.md +++ /dev/null @@ -1,29 +0,0 @@ -## wonderfall/rainloop - -![](https://i.goopics.net/nI.png) - -#### What is this? -Rainloop is a simple, modern & fast web-based client. More info on the [official website](http://www.rainloop.net/). - -#### Features -- Based on Alpine 3.3 -- Latest Rainloop **Community Edition** -- Contacts (DB) : sqlite, or mysql (server not built-in) -- nginx + PHP7 - -#### Build-time variables -- **GPG_rainloop** : fingerprint of signing key - -#### Environment variables -- **GID** : rainloop group id *(default : 991)* -- **UID** : rainloop user id *(default : 991)* - -#### Volumes -- **/rainloop/data** : data files. - -#### Ports -- **8888*** - -#### Reverse proxy -https://github.com/Wonderfall/dockerfiles/tree/master/reverse -https://github.com/hardware/mailserver/wiki/Reverse-proxy-configuration diff --git a/rainloop/nginx.conf b/rainloop/nginx.conf deleted file mode 100644 index 803b509..0000000 --- a/rainloop/nginx.conf +++ /dev/null @@ -1,76 +0,0 @@ -worker_processes auto; -pid /tmp/nginx.pid; -daemon off; - -events { - worker_connections 1024; - use epoll; -} - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - access_log off; - error_log /tmp/ngx_error.log error; - - sendfile on; - keepalive_timeout 15; - keepalive_disable msie6; - keepalive_requests 100; - tcp_nopush on; - tcp_nodelay on; - server_tokens off; - - fastcgi_temp_path /tmp/fastcgi 1 2; - client_body_temp_path /tmp/client_body 1 2; - proxy_temp_path /tmp/proxy 1 2; - uwsgi_temp_path /tmp/uwsgi 1 2; - scgi_temp_path /tmp/scgi 1 2; - - 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; - - server { - listen 8888; - root /rainloop; - index index.php index.html; - - location ^~ /data { - deny all; - } - - location / { - try_files $uri $uri/ index.php; - } - - location ~ \.php$ { - fastcgi_index index.php; - fastcgi_pass unix:/tmp/php-fpm.sock; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - include /etc/nginx/fastcgi_params; - } - - } - -} diff --git a/rainloop/php-fpm.conf b/rainloop/php-fpm.conf deleted file mode 100644 index f636044..0000000 --- a/rainloop/php-fpm.conf +++ /dev/null @@ -1,11 +0,0 @@ -[global] -daemonize = no - -[www] -listen = /tmp/php-fpm.sock -pm = dynamic -pm.max_children = 5 -pm.start_servers = 2 -pm.min_spare_servers = 1 -pm.max_spare_servers = 3 -chdir = / diff --git a/rainloop/run.sh b/rainloop/run.sh deleted file mode 100644 index 7363eb0..0000000 --- a/rainloop/run.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -chown -R $UID:$GID /rainloop /etc/nginx /etc/php7 /var/log /var/lib/nginx /tmp /etc/s6.d -exec su-exec $UID:$GID /bin/s6-svscan /etc/s6.d diff --git a/rainloop/s6.d/.s6-svscan/finish b/rainloop/s6.d/.s6-svscan/finish deleted file mode 100644 index c52d3c2..0000000 --- a/rainloop/s6.d/.s6-svscan/finish +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exit 0 diff --git a/rainloop/s6.d/nginx/run b/rainloop/s6.d/nginx/run deleted file mode 100644 index eaf8049..0000000 --- a/rainloop/s6.d/nginx/run +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec nginx diff --git a/rainloop/s6.d/php/run b/rainloop/s6.d/php/run deleted file mode 100644 index e238021..0000000 --- a/rainloop/s6.d/php/run +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec php-fpm7 diff --git a/rutorrent/Dockerfile b/rutorrent/Dockerfile deleted file mode 100644 index 6ddcc99..0000000 --- a/rutorrent/Dockerfile +++ /dev/null @@ -1,103 +0,0 @@ -FROM alpine:3.4 -MAINTAINER xataz -MAINTAINER Wonderfall - -ARG MEDIAINFO_VER=0.7.85 -ARG RTORRENT_VER=0.9.6 -ARG LIBTORRENT_VER=0.13.6 -ARG FILEBOT_VER=4.7 -ARG BUILD_CORES - -ENV UID=991 \ - GID=991 \ - WEBROOT=/ \ - PKG_CONFIG_PATH=/usr/local/lib/pkgconfig - -RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \ - && NB_CORES=${BUILD_CORES-`getconf _NPROCESSORS_CONF`} \ - && BUILD_DEPS=" \ - build-base \ - git \ - libtool \ - automake \ - autoconf \ - wget \ - tar \ - subversion \ - cppunit-dev \ - openssl-dev \ - ncurses-dev \ - curl-dev \ - binutils" \ - && apk -U add \ - ${BUILD_DEPS} \ - ffmpeg \ - ca-certificates \ - nginx \ - php7@commuedge \ - php7-fpm@commuedge \ - php7-json@commuedge \ - curl \ - gzip \ - zip \ - unrar \ - supervisor \ - geoip \ - tini@commuedge \ - openjdk8-jre@commuedge \ - && 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 \ - && mkdir libtorrent rtorrent \ - && cd libtorrent && wget -qO- https://github.com/rakshasa/libtorrent/archive/${LIBTORRENT_VER}.tar.gz | tar xz --strip 1 \ - && cd ../rtorrent && wget -qO- https://github.com/rakshasa/rtorrent/archive/${RTORRENT_VER}.tar.gz | tar xz --strip 1 \ - && cd /tmp \ - && wget -q http://mediaarea.net/download/binary/mediainfo/${MEDIAINFO_VER}/MediaInfo_CLI_${MEDIAINFO_VER}_GNU_FromSource.tar.gz \ - && wget -q 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 && ./autogen.sh && ./configure \ - && make -j ${NB_CORES} && make install \ - && cd /tmp/rtorrent && ./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 --depth=1 \ - && cd /var/www/rutorrent/plugins/ \ - && git clone https://github.com/Korni22/rutorrent-logoff logoff --depth=1 \ - && git clone https://github.com/xombiemp/rutorrentMobile.git mobile --depth=1 \ - && git clone https://github.com/Ardakilic/rutorrent-pausewebui pausewebui --depth=1 \ - && cd /var/www/rutorrent/plugins/theme/themes \ - && git clone https://github.com/Phlooo/ruTorrent-MaterialDesign.git Material --depth=1 \ - && 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 \ - && strip -s /usr/local/bin/rtorrent \ - && strip -s /usr/local/bin/mediainfo \ - && 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 ["/sbin/tini","--","startup"] diff --git a/rutorrent/README.md b/rutorrent/README.md deleted file mode 100644 index 75fbef7..0000000 --- a/rutorrent/README.md +++ /dev/null @@ -1,24 +0,0 @@ -## wonderfall/rutorrent -Originally forked from [xataz/rutorrent](https://github.com/xataz/dockerfiles/tree/master/rutorrent). - -#### What is this? -This container contains both rtorrent (whis is a BitTorrent client) and rutorrent (which is a front-end for rtorrent). Filebolt is also included, the default behavior is set to create clean symlinks, so media players like Emby/Plex can easily detect your TV shows and movies. - -![](https://pix.schrodinger.io/KDVxwnJA/nEMCzJEd.jpg) - -#### Main features -- Lightweight, since it's based on Alpine Linux. -- Everything is almost compiled from source. -- Secured, don't bother about configuration files. -- Filebot is included, and creates symlinks in `/data/Media`. -- rutorrent : Material theme by phlo set by default. -- rutorrent : nginx + PHP7. - -#### Ports - -- **49184** (bind it). -- **80** [(reverse proxy!)](https://github.com/hardware/mailserver/wiki/Reverse-proxy-configuration) - -#### Volumes -- **/data** : your files, symlinks, and so on. -- **/var/www/torrent/share/users** : rutorrent settings. \ No newline at end of file diff --git a/rutorrent/rootfs/etc/nginx/conf.d/cache.conf b/rutorrent/rootfs/etc/nginx/conf.d/cache.conf deleted file mode 100644 index 2d1f2f9..0000000 --- a/rutorrent/rootfs/etc/nginx/conf.d/cache.conf +++ /dev/null @@ -1,4 +0,0 @@ -location ~* \.(jpg|jpeg|gif|css|png|js|map|woff|woff2|ttf|svg|eot)$ { - expires 30d; - access_log off; -} diff --git a/rutorrent/rootfs/etc/nginx/conf.d/php.conf b/rutorrent/rootfs/etc/nginx/conf.d/php.conf deleted file mode 100644 index fb9fdd7..0000000 --- a/rutorrent/rootfs/etc/nginx/conf.d/php.conf +++ /dev/null @@ -1,6 +0,0 @@ -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; -} diff --git a/rutorrent/rootfs/etc/nginx/nginx.conf b/rutorrent/rootfs/etc/nginx/nginx.conf deleted file mode 100644 index 9b17b57..0000000 --- a/rutorrent/rootfs/etc/nginx/nginx.conf +++ /dev/null @@ -1,54 +0,0 @@ -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; - - fastcgi_temp_path /tmp/fastcgi 1 2; - scgi_temp_path /tmp/scgi 1 2; - client_body_temp_path /tmp/client_body 1 2; - - sendfile on; - keepalive_timeout 15; - keepalive_disable msie6; - keepalive_requests 100; - tcp_nopush on; - tcp_nodelay on; - 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; -} diff --git a/rutorrent/rootfs/etc/php7/php-fpm.conf b/rutorrent/rootfs/etc/php7/php-fpm.conf deleted file mode 100644 index e619b69..0000000 --- a/rutorrent/rootfs/etc/php7/php-fpm.conf +++ /dev/null @@ -1,12 +0,0 @@ -[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 = / diff --git a/rutorrent/rootfs/etc/php7/php.ini b/rutorrent/rootfs/etc/php7/php.ini deleted file mode 100644 index b4e52d3..0000000 --- a/rutorrent/rootfs/etc/php7/php.ini +++ /dev/null @@ -1,174 +0,0 @@ -[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] - diff --git a/rutorrent/rootfs/etc/supervisor.d/supervisord.ini b/rutorrent/rootfs/etc/supervisor.d/supervisord.ini deleted file mode 100644 index 4ed1247..0000000 --- a/rutorrent/rootfs/etc/supervisor.d/supervisord.ini +++ /dev/null @@ -1,17 +0,0 @@ -[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 diff --git a/rutorrent/rootfs/home/torrent/.rtorrent.rc b/rutorrent/rootfs/home/torrent/.rtorrent.rc deleted file mode 100644 index e3aba91..0000000 --- a/rutorrent/rootfs/home/torrent/.rtorrent.rc +++ /dev/null @@ -1,23 +0,0 @@ -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}" diff --git a/rutorrent/rootfs/sites/rutorrent.conf b/rutorrent/rootfs/sites/rutorrent.conf deleted file mode 100644 index 11c1b74..0000000 --- a/rutorrent/rootfs/sites/rutorrent.conf +++ /dev/null @@ -1,48 +0,0 @@ -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 ^~ { - root /var/www; - 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 ^~ /conf/ { - deny all; - } - - location ^~ /share/ { - deny all; - } - -} diff --git a/rutorrent/rootfs/usr/bin/postdl b/rutorrent/rootfs/usr/bin/postdl deleted file mode 100644 index 6061cf0..0000000 --- a/rutorrent/rootfs/usr/bin/postdl +++ /dev/null @@ -1,10 +0,0 @@ -#!/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" & diff --git a/rutorrent/rootfs/usr/bin/postrm b/rutorrent/rootfs/usr/bin/postrm deleted file mode 100644 index 95490f2..0000000 --- a/rutorrent/rootfs/usr/bin/postrm +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -/filebot/filebot.sh -script fn:cleaner /data/Media diff --git a/rutorrent/rootfs/usr/bin/startup b/rutorrent/rootfs/usr/bin/startup deleted file mode 100644 index 9eb26ff..0000000 --- a/rutorrent/rootfs/usr/bin/startup +++ /dev/null @@ -1,25 +0,0 @@ -#!/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 -mkdir /tmp/fastcgi /tmp/scgi /tmp/client_body - -if [ $WEBROOT != "/" ]; then - sed -i 's||'${WEBROOT}'|g' /sites/rutorrent.conf - sed -i 's|||g' /sites/rutorrent.conf - mv /var/www/torrent /var/www${WEBROOT} -else - sed -i 's||/|g' /sites/rutorrent.conf - sed -i 's||/torrent|g' /sites/rutorrent.conf -fi - -chown -R torrent:torrent /data /var/www /home/torrent /var/lib/nginx /filebot /tmp -rm -f /data/.session/rtorrent.lock - -/usr/bin/supervisord -c /etc/supervisord.conf diff --git a/rutorrent/rootfs/var/www/torrent/conf/config.php b/rutorrent/rootfs/var/www/torrent/conf/config.php deleted file mode 100644 index 02a676f..0000000 --- a/rutorrent/rootfs/var/www/torrent/conf/config.php +++ /dev/null @@ -1,36 +0,0 @@ - '/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"; diff --git a/rutorrent/rootfs/var/www/torrent/conf/plugins.ini b/rutorrent/rootfs/var/www/torrent/conf/plugins.ini deleted file mode 100644 index 8da94c6..0000000 --- a/rutorrent/rootfs/var/www/torrent/conf/plugins.ini +++ /dev/null @@ -1,20 +0,0 @@ -[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 diff --git a/rutorrent/rootfs/var/www/torrent/plugins/create/conf.php b/rutorrent/rootfs/var/www/torrent/plugins/create/conf.php deleted file mode 100644 index 19ea4c1..0000000 --- a/rutorrent/rootfs/var/www/torrent/plugins/create/conf.php +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/rutorrent/rootfs/var/www/torrent/plugins/theme/conf.php b/rutorrent/rootfs/var/www/torrent/plugins/theme/conf.php deleted file mode 100644 index 76c64a4..0000000 --- a/rutorrent/rootfs/var/www/torrent/plugins/theme/conf.php +++ /dev/null @@ -1,3 +0,0 @@ -