Use transmission on linux server

Use transmission with docker to build a pt downloading server Modified: 2023-07-04 20:24:23 Created: 2023-06-07 03:09:45 Tags: #linux # transmission # docker # pt

I have a headless linux server at home. And I have many accounts of bt sites, so I want to turn the linux server to a downloading server. And transmission a good choice. In this article, I will give specific instructions on transmission installation and transmission-cli usage.

Install docker

Actually, docker is not a must, but it can simplify the configuration steps. You can follow my article.

Use docker to run transmission

Here is my start script:

#! /bin/bash
TRANSMISSION_BASE=your_path
docker run --name "transmission" -d \
--env USER="hello" \
--env PASS="world" \
--publish 8084:9091 \
--publish 51413:51413 \
--publish 51413:51413/udp \
--volume ${TRANSMISSION_BASE}/config:/config \
--volume ${TRANSMISSION_BASE}/watch:/watch \
--volume ${TRANSMISSION_BASE}/downloads:/downloads \
--restart always \
linuxserver/transmission

Remember you have to set TRANSMISSION_BASE in the script, it a path to your storage path, for example, you can set TRANSMISSION_BASE=/data.

If you want to get remote access, you have to open the firewall. Let's say you are using firewall-cmd:

sudo firewall-cmd --add-port 8084/tcp --zone=public --permanent

Now you can get access to the server via: http://your_ip:8084, and the username and password is the value of USER and PASS in the start script.

Access via transmission cli

The won't alway be a browers, sometimes it is more convient to use the terminal. Here the transmission-cli is the solution.

sudo dnf install transmission-cli

Note that transmission-remote command wolud be used.

# list the tasks of transmission
transmission-remote 8084 -n hello:world -l
# add new torrent files
transmission-remote 8084 -n hello:world -a path-to-torrent-file

Summary

In this article, I give speicific instructions on how to install bt client transmission with docker, which turns my linux server a downloading machine. And transmission-cli is use to run transmission tasks in terminal.