Cloud Torrent是用GO(golang)语言写的,自托管在远程的Torrent客户端,支持磁力链接和BT种子离线下载。例如架设在云主机或VPS上,可以自动下载到服务器的硬盘上;本地呢,可以通过HTTP链接下载,对于流媒体(mp4、wbem、ogg)而言可以边下边播。且有个Web UI(支持移动客户端),可在线添加、查看进度(实时)、移除下载任务,可获取文件的HTTP下载地址,可在线搜索种子文件,可在线删除已下载的文件。

目前国内用的多的一个词,离线下载,我想一定程度上可以形容。

Cloud Torrent 项目地址

GitHub:https://github.com/jpillora/cloud-torrent

Cloud Torrent 安装步骤

主要有3个安装方式。

一、Shell 安装脚本

CentOS、Debian、Ubuntu都可以,root身份或sudo运行下面一行:

curl https://i.jpillora.com/cloud-torrent! | bash

其实也就是把二进制文件(传送门)放在/usr/local/bin目录下,然后给可执行权限。

这时候还没有添加到系统启动项,使用方法cloud-torrent [options]下面再说。

例如Systemd管理的系统,可以编辑文件/usr/lib/systemd/system/cloud-torrent.service,拷贝以下内容:

[Unit]
Description=cloud-torrent

[Service]
WorkingDirectory=/root/
ExecStart=/usr/local/bin/cloud-torrent --port 8080 --config-path /root/cloud-torrent.json --title "Cloud Torrent" --log --auth "user:password"
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target
  • 给权限:chmod +x /usr/lib/systemd/system/cloud-torrent.service
  • 设置开机自启动:systemctl enable cloud-torrent
  • 启动服务:systemctl start cloud-torrent
  • 查看活动状态:systemctl status cloud-torrent

二、通过 Docker 快速部署

仅支持在安装Docker的服务器上,OpenVZ架构的VPS不一定能装上Docker。

一键安装Docker:curl -sSL https://get.docker.com/ | sh

然后再执行下面命令运行即可:

docker run --name ct -d -p 8080:63000 \
  --restart always \
  -v /root/downloads:/downloads \
  jpillora/cloud-torrent --port 63000

浏览器中打开IP OR DOMAIN:8080即可。

三、通过源代码安装

先安装GO(golang),再使用命令:

go get -v github.com/jpillora/cloud-torrent

Cloud Torrent 启动参数

# cloud-torrent --help

  Usage: 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, -v

  Version:
    0.8.20

  Read more:
    https://github.com/jpillora/cloud-torrent

例如运行如下命令:

cloud-torrent \
  -t 'Hello, World.' \
  -p '10086' \
  -a 'onebox:123456'

默认的下载目录/username/downloads,默认创建的配置是相对命令运行的目录下./cloud-torrent.json

Docker中使用也一样,放在jpillora/cloud-torrent的后面,例如上面有写到的--port 63000,则是设置Cloud Torrent的端口为63000,然后-p 8080:63000,映射容器内63000端口到宿主机的8080端口上。

然后浏览器中打开,这个服务器的IP地址,或指向这个IP地址的域名。输入用户名onebox,密码123456就可以看到如下界面:

20170903221835.png

Cloud Torrent 使用简介

添加下载

在文本框中输入磁力链接的地址,或BT种子的地址,点击按钮Start Torrent开始下载:

20170903222247.png

或在文本框中输入关键词,然后选择搜素源站,点击Search,搜素结果出来后,点击列表右边的下载图标开始下载:

20170903222440.png

20170903222705.png

Cloud Torrent 下载时候的截图:

20170903222903.png

需要注意的是,Cloud Torrent并不支持上传本地种子,这就有点尴尬了,我在GitHub上看到作者回复一个人的信息,说是用Dropbox的公共目录,这种网盘国内应该有点难找。

下载任务管理

Files查看具体文件:

20170903223924.png

Stop暂停:

20170903223657.png

Stop暂停后变为Remove,点击可移除下载任务:

20170903224051.png

但是并不能删除文件。

删除文件需要鼠标悬停在Downloads栏目下的具体文件,才会在文件名右侧出现删除图标;点击一下,出现对勾图标,再点击一下,即可删除:

20170903224234.png

20170903224435.png

获取直接下载链接,右键Downloads栏目下文件列表的文件名,然后拷贝到各种多线程下载工具:

20170906141511.png

对于流媒体(mp4、wbem、ogg)而言,鼠标悬停在上面,右边除了删除的图标按钮外,还有个播放的按钮。

配置(Configuration)

点击右上角图标(下图所示),自动展开,再次点击则关闭展开:

20170906142031.png

  • Auto Start - 自动启动下载
  • Disable Encryption - 禁止加密
  • Download Directory - 下载路径
  • Enable Seeding - 做种
  • Enable Upload - 上传
  • Incoming Port - 传入端口

磁力链接编辑(Magnet URI Editor)

先在文本框中粘贴磁力链接,然后点击下方Edit按钮,或右上角磁铁图标:

20170906142941.png

下面是编辑展开后的详细截图:

20170906143337.png

不再细说。

结语

Cloud Torrent大概的介绍基本这样,当然很明显的发现有功能不够健全的地方。

例如不能通过本地上传种子,不能限制下载速度,不能设置同时进行的下载任务数量,…… 目前就想到这些。

要想功能强大还是得,例如Transmission

但是Cloud Torrent胜在部署方便,特别是Docker镜像,文件大小只有20M+;弄个例如Vultr(支持支付宝付款),deploy one一个DockerApplication,SSH远程登陆上去后运行:

docker run -d -p 10086:3000 --restart always -v /root/downloads:/downloads jpillora/cloud-torrent

就可以了!非常简单!