Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jpillora/cloud-torrent
☁️ Cloud Torrent: a self-hosted remote torrent client
https://github.com/jpillora/cloud-torrent
cloud golang self-hosted torrent torrent-client
Last synced: 3 days ago
JSON representation
☁️ Cloud Torrent: a self-hosted remote torrent client
- Host: GitHub
- URL: https://github.com/jpillora/cloud-torrent
- Owner: jpillora
- License: agpl-3.0
- Created: 2015-05-31T04:48:16.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-07-18T11:18:10.000Z (5 months ago)
- Last Synced: 2024-11-18T21:13:03.099Z (24 days ago)
- Topics: cloud, golang, self-hosted, torrent, torrent-client
- Language: Go
- Homepage:
- Size: 14 MB
- Stars: 5,822
- Watchers: 246
- Forks: 1,809
- Open Issues: 148
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-go - jpillora/cloud-torrent - hosted remote torrent client|5,491| (Popular)
- awesome - jpillora/cloud-torrent - ☁️ Cloud Torrent: a self-hosted remote torrent client (Go)
- awesome-hacking-lists - jpillora/cloud-torrent - ☁️ Cloud Torrent: a self-hosted remote torrent client (Go)
- awesome-homelab - cloud-torrent - torrent](https://img.shields.io/github/stars/jpillora/cloud-torrent?style=flat) ![cloud-torrent](https://img.shields.io/github/languages/top/jpillora/cloud-torrent?style=flat) | ☁️ Cloud Torrent: a self-hosted remote torrent client | (Apps / Download)
README
**Cloud torrent** is a a self-hosted remote torrent client, written in Go (golang). You start torrents remotely, which are downloaded as sets of files on the local disk of the server, which are then retrievable or streamable via HTTP.
### Features
* Single binary
* Cross platform
* Embedded torrent search
* Real-time updates
* Mobile-friendly
* Fast [content server](http://golang.org/pkg/net/http/#ServeContent)See [Future Features here](#future-features)
### Install
**Binaries**
[![Releases](https://img.shields.io/github/release/jpillora/cloud-torrent.svg)](https://github.com/jpillora/cloud-torrent/releases) [![Releases](https://img.shields.io/github/downloads/jpillora/cloud-torrent/total.svg)](https://github.com/jpillora/cloud-torrent/releases)
See [the latest release](https://github.com/jpillora/cloud-torrent/releases/latest) or download and install it now with
```
curl https://i.jpillora.com/cloud-torrent! | bash
```*Tip*: [Auto-run `cloud-torrent` on boot](https://github.com/jpillora/cloud-torrent/wiki/Auto-Run-on-Reboot)
**Docker**
[![Docker Pulls](https://img.shields.io/docker/pulls/jpillora/cloud-torrent.svg)][dockerhub]
[dockerhub]: https://hub.docker.com/r/jpillora/cloud-torrent/
``` sh
$ docker run -d -p 3000:3000 -v /path/to/my/downloads:/downloads jpillora/cloud-torrent
```**Source**
*[Go](https://golang.org/dl/) is required to install from source*
``` sh
$ go get -v github.com/jpillora/cloud-torrent
```**VPS**
[Digital Ocean](https://m.do.co/c/011fa87fde07)
1. [Sign up with free $10 credit](https://m.do.co/c/011fa87fde07)
2. "Create Droplet"
3. "One-Click Apps"
4. "Docker X.X.X on X.X"
5. Choose server size ("$5/month" is enough)
6. Choose server location
7. **OPTIONAL** Add your SSH key
8. "Create"
9. You will be emailed the server details (`IP Address: ..., Username: root, Password: ...`)
10. SSH into the server using these details (Windows: [Putty](https://the.earth.li/~sgtatham/putty/latest/x86/putty.exe), Mac: Terminal)
11. Follow the prompts to set a new password
12. Run `cloud-torrent` with:docker run --name ct -d -p 63000:63000 \
--restart always \
-v /root/downloads:/downloads \
jpillora/cloud-torrent --port 6300013. Visit `http://:63000/`
14. **OPTIONAL** In addition to `--port` you can specify the options below[Vultr](http://www.vultr.com/?ref=6947403-3B)
* [Sign up with free $10 credit here](http://www.vultr.com/?ref=6947403-3B)
* Follow the DO tutorial above, very similar steps ("Applications" instead of "One-Click Apps")
* Offers different server locations[AWS](https://aws.amazon.com)
**Heroku** (Heroku is no longer supported)
### Usage
```
$ cloud-torrent --helpUsage: cloud-torrent [options]
Options:
--title, -t Title of this instance (default Cloud Torrent, env TITLE)
--port, -p Listening port (default 3000, env PORT)
--host, -h Listening interface (default all)
--auth, -a Optional basic auth in form 'user:password' (env AUTH)
--config-path, -c Configuration file path (default cloud-torrent.json)
--key-path, -k TLS Key file path
--cert-path, -r TLS Certicate file path
--log, -l Enable request logging
--open, -o Open now with your default browser
--help
--version, -vVersion:
0.X.YRead more:
https://github.com/jpillora/cloud-torrent```
### Future features
The next set of [core features can be tracked here](https://github.com/jpillora/cloud-torrent/issues?q=is%3Aopen+is%3Aissue+label%3Acore-feature). This feature set requires large structural changes and therefore requires a complete rewrite for best results. This rewrite is in progress in the `0.9` branch though it will take quite some time.
In summary, the core features will be:
* **Remote backends**
It's looking like `0.9` will be more of a general purpose cloud transfer engine. It will be capable of transfering files from and source file-system to any destination file-system. A torrent can be viewed a folder with files, just like your local disk, and Dropbox. As long as it has a concept of files and folders, it could potentially be a cloud-torrent file-system backend. Track this issue https://github.com/jpillora/cloud-torrent/issues/24 for the list of proposed backends.
* **File Transforms**
During a file tranfer, one could apply different transforms against the byte stream for various effect. For example, supported transforms might include: video transcoding (using ffmpeg), encryption and decryption, [media sorting](https://github.com/jpillora/cloud-torrent/issues/4) (file renaming), and writing multiple files as a single zip file.
* **Automatic updates** Binary will upgrade itself, adding new features as they get released.
* **RSS** Automatically add torrents, with smart episode filter.Once completed, cloud-torrent will no longer be a simple torrent client and most likely project be renamed.
#### Donate
If you'd like to buy me a coffee or more, you can donate via [PayPal](https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=dev%40jpillora%2ecom&lc=AU&item_name=Open%20Source%20Donation&button_subtype=services¤cy_code=USD&bn=PP%2dBuyNowBF%3abtn_buynowCC_LG%2egif%3aNonHosted) or BitCoin `1AxEWoz121JSC3rV8e9MkaN9GAc5Jxvs4`.
### Notes
This project is the rewrite of the original [Node version](https://github.com/jpillora/node-torrent-cloud).
![overview](https://docs.google.com/drawings/d/1ekyeGiehwQRyi6YfFA4_tQaaEpUaS8qihwJ-s3FT_VU/pub?w=606&h=305)
Credits to @anacrolix for https://github.com/anacrolix/torrent
Copyright (c) 2017 Jaime Pillora