torrserver

command module
v0.0.0-...-01aa6d9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 2, 2026 License: GPL-3.0 Imports: 11 Imported by: 0

README


Simple and powerful tool for streaming torrents.

GitHub Go Reference CodeFactor Build GitHub release (latest SemVer) GitHub tag (latest SemVer pre-release)

Introduction

TorrServer is a program that allows users to view torrents online without the need for preliminary file downloading. The core functionality of TorrServer includes caching torrents and subsequent data transfer via the HTTP protocol, allowing the cache size to be adjusted according to the system parameters and the user's internet connection speed.

AI Documentation

Ask DeepWiki

Features

  • Caching
  • Streaming
  • Local and Remote Server
  • Viewing torrents on various devices
  • Integration with other apps through API
  • Cross-browser modern web interface
  • Optional DLNA server

Getting Started

Installation

Download the application for the required platform in the releases page. After installation, open the link http://127.0.0.1:8090 in the browser.

Linux

Run in console

curl -s https://raw.githubusercontent.com/9000000/TorrServer/master/installTorrServerLinux.sh | sudo bash

The script supports interactive and non-interactive installation, configuration, updates, and removal. When running the script interactively, you can:

  • Install/Update: Choose to install or update TorrServer
  • Reconfigure: If TorrServer is already installed, you'll be prompted to reconfigure settings (port, auth, read-only mode, logging, BBR)
  • Uninstall: Type Delete (or Удалить in Russian) to uninstall TorrServer

Download first and set execute permissions:

curl -s https://raw.githubusercontent.com/9000000/TorrServer/master/installTorrServerLinux.sh -o installTorrServerLinux.sh && chmod 755 installTorrServerLinux.sh

Command-line examples:

  • Install a specific version:

    sudo bash ./installTorrServerLinux.sh --install 135 --silent
    
  • Update to latest version:

    sudo bash ./installTorrServerLinux.sh --update --silent
    
  • Reconfigure settings interactively:

    sudo bash ./installTorrServerLinux.sh --reconfigure
    
  • Check for updates:

    sudo bash ./installTorrServerLinux.sh --check
    
  • Downgrade to a specific version:

    sudo bash ./installTorrServerLinux.sh --down 135
    
  • Remove/uninstall:

    sudo bash ./installTorrServerLinux.sh --remove --silent
    
  • Change the systemd service user:

    sudo bash ./installTorrServerLinux.sh --change-user root --silent
    

All available commands:

  • --install [VERSION] - Install latest or specific version
  • --update - Update to latest version
  • --reconfigure - Reconfigure TorrServer settings (port, auth, read-only mode, logging, BBR)
  • --check - Check for updates (version info only)
  • --down VERSION - Downgrade to specific version
  • --remove - Uninstall TorrServer
  • --change-user USER - Change service user (root|torrserver)
  • --root - Run service as root user
  • --silent - Non-interactive mode with defaults
  • --help - Show help message

Running in Docker & Docker Compose

Run in console

docker run --rm -d --name torrserver -p 8090:8090 ghcr.io/9000000/torrserver:latest

For running in persistence mode, just mount volume to container by adding -v ~/ts:/opt/ts, where ~/ts folder path is just example, but you could use it anyway... Result example command:

docker run --rm -d --name torrserver -v ~/ts:/opt/ts -p 8090:8090 ghcr.io/9000000/torrserver:latest
Docker Compose
# docker-compose.yml

version: '3.3'
services:
    torrserver:
        image: ghcr.io/9000000/torrserver
        container_name: torrserver
        network_mode: host
        environment:
            - TS_PORT=5665
            - TS_DONTKILL=1
            - TS_HTTPAUTH=0
            - TS_CONF_PATH=/opt/ts/config
            - TS_TORR_DIR=/opt/ts/torrents
        volumes:
            - './CACHE:/opt/ts/torrents'
            - './CONFIG:/opt/ts/config'
        ports:
            - '5665:5665'
        restart: unless-stopped

Development

Build

Server
  • Install Golang 1.20+
  • Go to the TorrServer source directory
  • Run build script under linux build-all.sh
Web
  • Install npm and yarn
  • Go to the web directory
  • Run NODE_OPTIONS=--openssl-legacy-provider yarn build

More info at https://github.com/9000000/TorrServer/tree/master/web#readme

API

API documentation is hosted as Swagger format available at path /swagger/index.html.

Authentication

The users data file should be located near to the settings. Basic auth.

accs.db in JSON format:

{
    "User1": "Pass1",
    "User2": "Pass2"
}

Note: You should enable authentication with -a (--httpauth) TorrServer startup option.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL