Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/autobrr/distribrr

An orchestrator for distributed download of torrents
https://github.com/autobrr/distribrr

autobrr automation docker golang qbittorrent self-hosted torrent

Last synced: about 2 months ago
JSON representation

An orchestrator for distributed download of torrents

Awesome Lists containing this project

README

        

# distribrr

·▄▄▄▄ ▪ .▄▄ · ▄▄▄▄▄▄▄▄ ▪ ▄▄▄▄· ▄▄▄ ▄▄▄
██▪ ██ ██ ▐█ ▀. •██ ▀▄ █·██ ▐█ ▀█▪▀▄ █·▀▄ █·
▐█· ▐█▌▐█·▄▀▀▀█▄ ▐█.▪▐▀▀▄ ▐█·▐█▀▀█▄▐▀▀▄ ▐▀▀▄
██. ██ ▐█▌▐█▄▪▐█ ▐█▌·▐█•█▌▐█▌██▄▪▐█▐█•█▌▐█•█▌
▀▀▀▀▀• ▀▀▀ ▀▀▀▀ ▀▀▀ .▀ ▀▀▀▀·▀▀▀▀ .▀ ▀.▀ ▀

distribrr is a companion to autobrr to distribute downloads across multiple servers.

- Single binary that can run as either agent or server
- Supported clients: qBittorrent
- Read filesystem

## Server

You need to run one server that manages agents.

### Run

distribrr server run

## Agent

The agent runs on remote servers alongside the torrent clients and has access to the filesystem.

### Run

distribrr agent run

## Autobrr usage

To use with autobrr set up a new action of type `Webhook` and use the following:

1. Endpoint: `http://localhost:7422/api/v1/tasks?apikey=YOUR_SECRET_TOKEN`

2. Payload:
```json
{
"download_url": "{{ .DownloadUrl }}",
"name": "{{ .TorrentName }}",
"max_replicas": 2,
"category": "race",
"tags": "race,distribrr",
"indexer": "{{ .IndexerName }}",
"labels": {
"region": "test"
}
}
```

## Flow

announce -> autobrr -> filters -> actions -> distribrr
\ \
\ + agent -> torrent client(s)
+ agent -> torrent client(s)