Public Repository

Last pushed: 20 days ago
Short Description
rtorrent box for raspberry pi. It's for ARM processors, it won't run on x86.
Full Description


Image: rtorrent box for raspberry pi. It's for ARM processors, it won't run on x86.
If you need an x86_64 version go to

The image contains nginx + php5-fpm + rtorrent + rutorrent started with supervisord.

Usage in 2 steps:

  1. Get Hypriot docker image for raspberry pi and flash it (or raspbian + install hypriot docker package).
  2. Execute docker, for example, to store data in /mnt/mydata, run webserver on ports 80/443, access with myuser/mypassword and timezone Berlin (if you will use rtorrent scheduler to limit speeds by time use your own timezone), and to start again even after reboot or shutdown:

    docker run -dt --name rpi-torrent \
    -p 80:80 -p 443:443 -p 49160:49160/udp -p 49161:49161 \
    --restart=always \
    -v /mnt/mydata:/rtorrent \
    -e NEW_USER=myuser \
    -e NEW_PASS=mypass \
    -e TZ=Europe/Berlin \


  1. If you plan to use external USB, use 2A 5V power suply and add this to/boot/config.txt:
  2. If you getting errors like smsc95xx 1-1.1:1.0 eth0: kevent 2 may have been dropped add this to/boot/config.txt.:
  3. Add vm.min_free_kbytes = 16384 to /etc/sysctl.conf help with some kernel feezes.


Before building it I searched for another rtorrent images and I've found two:

I wanted to make the image it works on raspberry but neither of those two would work it correctly just changing the base image, one used some repositories not available on raspberry, the other image uses binaries on x86_64 to run docker s6 instead supervisord, ... So I finaly decided to start one using a base raspbian:jessie image and get to work using the last rtorrent, libtorrent and uTorrent versions.


  • rtorrent
  • ruTorrent
  • nginx (normal + SSL)
  • php5-fpm

Sample docker run:

Changing default user and password

docker run -dt --name rpi-torrent_01 \
  -p 8080:80 -p 8443:443 -p 49160:49160/udp -p 49161:49161 \
  -v ~/data:/rtorrent \
  -e NEW_USER=myuser \
  -e NEW_PASS=mypass \

Environment vars to change rtorrent listening ports

The environment RTORRENT_DHT and RTORRENT_PORT changes the rtorrent configuration to listen on those ports instead the default 49160 and 49161. For example, lets change it to 50000 and 50001:

docker run -dt --name rpi-torrent_01 \
  -p 8080:80 -p 8443:443 -p 50000:50000/udp -p 50001:50001 \
  -v ~/data:/rtorrent \
  -e RTORRENT_DHT=50000 \
  -e RTORRENT_PORT=50001 \
  sdelrio/rpi-torrent-box \

The URL to acces is now on http://<IP> instead http://<IP>/rutorrent. Login user/password.

This will map our data directory on home with the download and config folder /rtorrent inside the box.

  • Dockerfile and build:

Docker Pull Command