Giter Site home page Giter Site logo

docktorrent's Introduction

Docker pulls Docker stars Docker image status

docktorrent

Using Docker, rTorrent and ruTorrent to run a full-featured BitTorrent box.

Highlights

  • All-in-one Docker container, build once and run everywhere.
  • Newest version of rTorrent and ruTorrent, with support of DHT and asynchronous DNS which will results in a more responsive rTorrent.
  • Enable all useful ruTorrent plugins by default.
  • Get a working BitTorrent box in less than 3 minutes, give it a quick try and tune the configs later.
  • rTorrent will automatically restarts on crash or freeze.
  • No more boring installation, also keep your OS in a clean state.

Quick Start

Clone this repository and build the image locally:

git clone https://github.com/kfei/docktorrent
cd docktorrent
docker build -t docktorrent .

The building process may take some time. You can just pull the latest image from Docker Hub:

docker pull kfei/docktorrent

After the image is built or pulled, run the docktorrent container, for example:

docker run -it \
    -p 80:80 -p 45566:45566 -p 9527:9527/udp \
    --dns 8.8.8.8 \
    -v /data-store:/rtorrent \
    -e UPLOAD_RATE=1024 \
    kfei/docktorrent    # Or just `docktorrent` for locally built image

Note that:

  • The exposed ports are required for ruTorrent web interface, rTorrent listening and the DHT protocol according to the default .rtorrent.rc.
  • The --dns 8.8.8.8 argument is optional but recommended. It seems like the current version of rTorrent still has some DNS issues, using Google's DNS may help.
  • The /data-store volume is for all downloads, torrents and session data, just make sure the disk space is enough.
  • Override the upload_rate setting of rTorrent to 1024KB. Check the full list of available runtime configs.

If the container starts without errors, visit http://127.0.0.1 through any web browser, log in to with the default username/password: docktorrent/p@ssw0rd.

Happy seeding!

Runtime Configs

There are some environment variables can be supplied at run time:

  • LOGS_OFF: Set this to yes to turn off all logs generated by rTorrent and other services so that you don't have to worry about space for /var/log. Default is not set.
  • AUTH_OFF: Disable HTTP authentication on certain network. E.g., 192.168.1.0/24 or all.

Override settings in .rtorrent.rc:

  • IP overrides ip.
  • MAX_PEERS overrides max_peers.
  • MAX_PEERS_SEED overrides max_peers_seed.
  • MAX_UPLOADS overrides max_uploads.
  • DOWNLOAD_RATE overrides download_rate.
  • UPLOAD_RATE overrides upload_rate.

Requirement

All you need is to have Docker installed on your system. Check Docker Documentation for installation guide on your OS platform.

Tips

  • docker stop can gracefully shutdown rTorrent if you give it more time by docker stop -t 120 (which means 120 seconds to time out).

Feedback

Bug reports and feature suggestions are both welcome. Feel free to use the issue tracker.

Screenshots

IMAGE

IMAGE

IMAGE

docktorrent's People

Contributors

bonega avatar jaysh avatar kfei avatar wheelerlaw avatar ypid avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.