静看光阴荏苒
不管不顾不问不说也不念

TorrentsDuck:一个多用户BT下载平台

这玩意说实话UI是挺好看的,但是实际用起来的话效果比较差,原因有三:

1.它是基于WebTorrent的,也就是说很多种子下载速度在这个上面会非常慢。

2.部署非常麻烦,占用系统资源超多,同时部署好了后也不方便管理。

3.用户权限这块估计是还没设计好,普通用户可以随便删除其他用户包括管理员在内的种子。。。

不过在没有折腾起来这个玩意之前,谁也不知道它会是现在这个样子,只能说有点扎心。。。

OK,如果你也想折腾一下的话,请先做好下面的准备工作:

1.一个域名添加四条解析记录到你的VPSIP,分别是:@/www/ftp/wt

2.一台KVM架构的VPS安装CentOS7X64,并且内存大于4GB

首先更新系统:

yum -y update

安装开发工具包:

yum -y groupinstall "Development Tools"

关闭SELinux:

vi /etc/selinux/config
SELINUX=disabled
setenforce 0

安装Docker/设置开机启动:

yum -y install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.06.1.ce-3.el7.x86_64.rpm
systemctl start docker
systemctl enable docker.service

安装Node.js:

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
yum -y install nodejs

安装Meteor:

curl https://install.meteor.com/ | sh

安装MeteorUp:

npm install --global mup

新建一个用户:

adduser duck

切到这个用户下面:

su duck

拉取项目文件:

cd
git clone https://github.com/guidouil/TorrentsDuck.git
cd TorrentsDuck

重命名构建目录:

cp -r .deploy-dist .deploy

分别在duck/torrents/ftp三个目录内安装程序所需依赖:

cd duck
meteor npm install

cd ..
cd torrents
meteor npm install

cd ..
cd ftp
meteor npm install

全部完成之后,回到项目根目录编辑mup.js配置文件:

cd ..
vi .deploy/duck/mup.js
vi .deploy/torrents/mup.js
vi .deploy/ftp/mup.js

这三个配置文件都大同小异,需要共同修改的地方有以下几个:

Q:host: 'MY.SERVER.IP.ADDRESS'

A:填写你的服务器公网IP

Q:username: 'MY_SERVER_SUDOER_USERNAME'

A:填写系统sudo用户的用户名,一般都是root

Q:password: 'MY_SERVER_SUDOER_USERNAME_PASSWORD'

A:填写root用户的密码

Q:ROOT_URL: 'https://MY_DOMAIN.com',

A:填写你的站点域名,注意开头修改为http。

Q:domains: 'MY_DOMAIN.com,www.MY_DOMAIN.com',

A:填写你的站点域名。

Q:letsEncryptEmail: 'MY_DOMAIN@gmail.com',

A:随便写一个你的邮箱地址。

除去上面这些以外,下面这个配置文件还要单独再修改一个地方:

vi .deploy/torrents/mup.js

把:

image: 'abernix/meteord:node-8.4.0-base',

改为:

image: 'abernix/meteord:node-8.11.2-base',

这样做是解决这个项目目前的一个BUG,这个项目默认使用8.4.0版本的Node.js构建,但是实际项目构建过程中有一个包不兼容8.4.0,所以我们把Node.js的版本升到8.11.2。

接着我们还需要修改三个配置文件:

vi .deploy/duck/settings.json
vi .deploy/torrents/settings.json
vi .deploy/ftp/settings.json

在这三个配置文件内,统一需要改动的地方有两个:

Q:"torrentMaxConnections": 55,

A:修改单个种子的最大连接数,这个值默认是55,太小了,随缘改大点吧,虽然也没什么卵用就是。

Q:"serverIp": "MY.SERVER.IP.ADDRESS",

A:填写你的服务器公网IP。

OJBK,现在你终于可以开始部署项目了,因为这个程序是分为三个容器的,所以我们首先在duck目录内部署第一个前端所需的容器:

cd .deploy/duck
mup setup
mup deploy

估计是20分钟左右的时间,部署过程贼J8慢,吃的资源贼J8多,如果成功了,会有如下图的回显:

此时访问你的站点域名,应该可以看到这个程序的前端界面了:

此时赶快点击signup去注册一个账号,程序默认第一个注册的用户就是管理员,所以手速一定要快,被别人注册了你就蛋疼了。。注册完成之后别急,登录默认就是这样的:

你需要重启一次才能使管理员账号生效:

mup meteor restart

接着就是部署这个程序所需的后端和FTP服务(其实FTP也可以不装,这个程序前端自带一个文件管理器):

cd ..
cd torrents
mup setup
mup deploy
cd ..
cd ftp
mup setup
mup deploy

既然我们做事就做全套,FTP服务部署了,但是现在是无法正常使用的,因为跑在Docker里面,首先要看看这个Docker的eth0网卡的IP,然后做端口转发。

cd ..
cd duck
mup ssh
docker exec -it FTP bash
ip addr show

可以看到我这个Docker的IP是:

OJBK,退出来:

exit

然后启动系统的防火墙:

systemctl start firewalld.service

配置firewalld进行端口转发:

firewall-cmd --permanent --add-port=9876/tcp
firewall-cmd --permanent --add-port=9876/udp
firewall-cmd --permanent --add-port=8000-9000/tcp
firewall-cmd --permanent --add-port=8000-9000/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --permanent --add-forward-port=port=9876:proto=tcp:toport=9876:toaddr=172.17.0.7
firewall-cmd --permanent --add-forward-port=port=9876:proto=udp:toport=9876:toaddr=172.17.0.7
firewall-cmd --permanent --add-forward-port=port=8000-9000:proto=tcp:toport=8000-9000:toaddr=172.17.0.7
firewall-cmd --permanent --add-forward-port=port=8000-9000:proto=udp:toport=8000-9000:toaddr=172.17.0.7
firewall-cmd --reload

我随便下了几个种子测试了下,只能用稀烂两个字形容:

打扰了,告辞。。。

赞(2) 打赏
未经允许不得转载:荒岛 » TorrentsDuck:一个多用户BT下载平台
分享到: 更多 (0)

评论 4

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    打扰了 告辞

    ohoh4周前 (10-25) Google Chrome 69.0.3497.100 Google Chrome 69.0.3497.100 Mac OS X  10.13.6 Mac OS X 10.13.6回复
  2. #2

    大佬这都从哪儿研究的这么多好项目,另外继续等待山寨币教程 :neutral: :neutral:

    阿楚姑娘4周前 (10-25) Google Chrome 63.0.3239.132 Google Chrome 63.0.3239.132 Windows 7 x64 Edition Windows 7 x64 Edition回复
    • 山寨币应该是出不了教程了,技术不够。。

      LALA3周前 (10-27) Google Chrome 67.0.3396.99 Google Chrome 67.0.3396.99 Windows 10 x64 Edition Windows 10 x64 Edition回复
      • 哈哈好的大佬,那就继续关注大佬其他的教程,大佬,你博客评论的邮件通知是不是不好用,你回复我,我这边收不到邮件

        阿楚姑娘3周前 (10-27) Google Chrome 63.0.3239.132 Google Chrome 63.0.3239.132 Windows 7 x64 Edition Windows 7 x64 Edition回复

分享创造快乐

广告合作资源投稿

觉得文章有用就请我吃包薯片吧

支付宝扫一扫打赏