Installing rTorrent and ruTorrent with Docker on Ubuntu 20.04

Following on from a previous post where I installed Deluge using Snap, I also wanted to try out rTorrent and ruTorrent. These weren’t available on the Snap Store, so I opted for Docker.

As is often the case with my server, Docker wasn’t already installed:

root@server:~# docker ps

Command 'docker' not found, but can be installed with:

The installation instructions for Docker are thorough, so you should have no problem in getting it set up. I followed the Install using the repository and Install Docker Engine instructions and was set up in no time.

root@server:~# sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:53f1bbee2f52c39e41682ee1d388285290c5c8a76cc92b42687eecf38e0af3f0
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

We also need to make sure docker-compose is installed, as we’ll be using that later:

sudo apt install docker-compose

We’re going to be using the rTorrent and ruTorrent Docker image which is prepared and maintained by crazy-max. To get the latest image, we execute the following command:

root@server:~# docker pull crazymax/rtorrent-rutorrent
Using default tag: latest
latest: Pulling from crazymax/rtorrent-rutorrent
...
Status: Downloaded newer image for crazymax/rtorrent-rutorrent:latest
docker.io/crazymax/rtorrent-rutorrent:latest

The recommended way to run the image is to download these files and place them into a folder (e.g. /var/rtorrent-rutorrent/), then execute the following commands in the same folder:

mkdir data downloads passwd
chown ${PUID}:${PGID} data downloads passwd

Before starting the image, I would recommend you set up authentication first. To do this, execute these commands in the same folder as above:

docker run --rm -it httpd:2.4-alpine htpasswd -Bbn <username> <password> >> passwd/rpc.htpasswd 
docker run --rm -it httpd:2.4-alpine htpasswd -Bbn <username> <password> >> passwd/rutorrent.htpasswd 
docker run --rm -it httpd:2.4-alpine htpasswd -Bbn <username> <password> >> passwd/webdav.htpasswd

We can now start the image:

docker-compose up -d

ruTorrent will now be accessible from http://server-ip-address:8080, and it’ll ask you to enter the username and password which you generated above.

If you have a firewall active, you may need to add rules for the following ports:

  • TCP: 8000, 8080, 9000, 50000
  • UDP: 6881

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top