Install Transmission using Docker – BitTorrent Download Client

Transmission is one of the best Bittorrent clients offering a fast and easy to use interface. Well known in the server world and used by professionals and beginners alike, Transmission offers encryption, magnet links, UPnP and NAT-PMP port forwarding. Besides that, Windows users can use Transmission Remote GUI to connect to their Transmission server and have the full functionality of a local torrent client. In our previous posts, you learned how to install Transmission on Ubuntu Server using AtoMiC  toolkit and today I will show you how you can install Transmission using Docker in just a couple minutes.
Must Read: Ultimate Smart Home Media Server with Docker and Ubuntu 18.04 – Basic
If you do not know what Docker is, be sure to read our What is Docker guide and comparison to VirtualBox in advance and get familiarized with the terms used. [Read: What is Usenet and why is it better than Torrents?]

Install Transmission using Docker

Before starting the Docker Transmission installation guide, make sure to follow our previous guides where you can learn to Install Docker on Ubuntu, Windows 10 Pro/Ent, and Windows 7 and 8.

Install Transmission Using Docker
Docker Commandline Prompt

You can install Transmission in a new Docker container from scratch. But, ready-made containers are already available for several apps on Docker Hub. So all you need to do is pull those containers and install. If you are ready, open Docker command prompt and get ready to setup Transmission in Docker.

IPVanish VPN Exclusive Offer - only $3.25 per month:

VPN Guides
Windows, Android, Ubuntu
Kodi OpenVPN

♦ Hide your browsing (no logs), Anonymize Streaming and Downloads
♦ Circumvent Geo/Country Restrictions and access worldwide content
♦ Works on Windows, Mac, Linux, Android, iOS, Router, and more
♦ 250 GB of SugarSync Secure storage included
♦ Money back guarantee - Sign Up Now

1. Transmission Pull Command

To install Transmission using Docker, you will first need to grab the latest version of Transmission container from the linuxserver Docker Hub. LinuxServer is a Docker repository with several HTPC and home server app containers.

docker pull linuxserver/transmission

Pull the ready-made Transmission docker container using the above command.

2. Set Transmission Configuration Parameters in Docker

After pulling the container with the latest version of Transmission, we need to configure the usage parameters such as download folders, port number, etc. for the service. Copy all lines in the code block below (it is one single command) and paste it into docker prompt.

sudo docker create --name=transmission \
--restart=always \
-v /home/docker/transmission/config:/config \
-v /home/docker/transmission/downloads:/downloads \
-v /home/docker/transmission/watch:/watch \
-e PGID=1001 -e PUID=1001 \
-e TZ=Europe/London \
-p 9091:9091 -p 51413:51413 \
-p 51413:51413/udp \

While you can just copy and paste the settings mentioned above, I recommend that you understand each parameter using the description below and customize it to your liking. Therefore, before issuing the above docker command, change certain parameters (eg. port number, folders, etc.) to fit your situation.

  • sudo docker create --name=transmission \ - Creates a new docker container with the name "transmission"
  • --restart=always \ - Starts the Transmission container automatically during boot.  If you don't want the container to be started automatically, you can skip this command.
  • -v /home/docker/transmission/config:/config \ - Specifies the location of the Transmission config files. In this case, the config folder is located in /home/docker/transmission/ directory.
  • -v /home/docker/transmission/downloads:/downloads \ - Specifies the location of the downloads folder. In this case, the downloads folder is located in /home/docker/transmission/ directory.
  • -v /home/docker/transmission/downloads:/watch \ - Specifies the location of the watch folder where you can add .torrent files in order to be automatically downloaded. In this case, the movies folder is located in /home/docker/transmission/ directory.
  • -e PGID=1001 -e PUID=1001 \ - Specifies the user id in order to minimize permission issues that can arise between the host OS (Ubuntu) and the container.
  • -e TZ=Europe/London \ - Specifies the timezone information. You can check your timezone by following this link.
  • p 9091:9091 -p 51413:51413 \ - Specifies the ports used by the torrent client. In this case, the ports are 9091 and 51413.
  • -p 51413:51413/udp \ - Specifies the ports used by the torrent client. In this case, the port is 51413.

3. Start and Stop Transmission Container in Docker

If you used the correct parameters, you can go ahead and start the Transmission container you have just created, using the following command.

sudo docker start transmission

After starting the Transmission Docker container, you will be able to open the web interface on port 80. In my case the ip is

Transmission Web Interface
Transmission Web Interface

Docker Transmission Installation Dnoe. What to do next?

Congratulations! You managed to setup Transmission in Docker successfully. Once Docker is setup, it is extremely simple to create and destroy containers with apps. If you want to be able to access Transmission outside your home network, be sure to setup port forwarding on your router. You will have to forward the Transmission port to the local/internal IP address of the system with Docker installation.

You can also learn how to control Transmission remotely using Transdrone from your smartphone. Check back soon to learn more about Docker and how you can install various other services in Docker containers.

Did this post help you?
SmartHomeBeginner brings in-depth tutorials easy enough to understand even for beginners. If you are reading this, please consider buying us a coffee (or two) as a token of appreciation.


Ciprian is an enthusiast, always up to date with the latest and greatest in the IT field. Passionate about computers, mobile devices and gadgets. In his spare time, he is a gamer.