Deluge – torrent client on Docker

I hope you have read previous posts where we set up the Docker for the first time use and learned a few basic commands In this post we will setup torrent client on Docker. It will enable us to download torrents from a docker based container. Above all, it is an isolated instance running on Docker.

Setting up shared folders for mount drives

By default, c:\users folder from your windows machine is mapped with the docker which means you can use any folder under c:\users from your windows host with docker. If you want to use a volume using a directory outside of c:\users this is an extension. Follow these steps to create a shared folder-

  1. Select the machine (in my case default) in VirtualBox
  2. Open settings of the machine and jump to Shared Folders
  3. Add a new machine folder. For example, in my case I have included:

*Name*: d/docker
*Path*: d:\docker


Pull image and run the container

You can explore the docker hub repository and use any image of your choice. In this case, I am using Deluge web UI image. Run this command to pull the image in your docker

docker pull jakexks/deluge-torrent-seedbox

Run the container

This command will run the container with a shared directory configured above.

docker run -d --name deluge -p 80:80 -p 8112:8112 -p 58846:58846 -p 58847:58847 -p 58847:58847/udp -v /d/docker/deluge:/home/deluge jakexks/deluge-torrent-seedbox

So, you can notice the ports are mapped one on one. These ports mapping is between the Linux machine running on VirtualBox with the service you will run on the container.

Also, using the -v parameter you are mapping windows host folder with a directory on Linux host. This will download show all content on your selected path. In this case, it is d:\docker


Ahaa, finally Deluge web UI is live with Deluge web UI. This is a completely isolated instance running on Docker.

You can stop your container and docker machine to save your changes and use it for next time.

Happy torrenting !!


Leave a Reply

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