需求

家里除了长期服役的Gen8以外,前几天利旧组装了一个HTPC,采用了J3455+8G的配置,机箱迎广mini,主要是看中无风扇的静音,系统安装了Win10,一方面作为客厅电视的播放器,一方面利用Ubuntu跑了一些服务,比如LNMP什么的。

前期我大爱的刀剑神域和魔禁3都同时出来了,我就想着是用动漫磁力站的,能随时下载,这样在家里和手机上都能随时观看。(30岁的大叔一直不习惯用B站,怀念当年极影的年代)而且我想在手机上看了一半,回家可以接着看。所以我需要:

  • 能离线下载,支持磁力/BT等协议
  • 能随时看,手机/电脑/pad,在家、在公司、在路上
  • 有一定的媒体管理能力,切换设备能自动续播

此外,我一直对Plex比较情有独钟:

Plex是一个视频服务器,这是一款主打流媒体传输的软件,它可以把你的所有设备的视频、图片、音乐整合到一个资料库中,只要你的手机、电脑处于同一个局域网内,便可以打通界限,无需下载,使这些媒体资料从任意一台设备均可访问,就像在网站上看视频的实时缓存一样。
mobile.png
dims.jpg
网上流传着大量资源,包括动漫、电视剧、电影,当然还有一次搞定Aria/H5ai/Plex全功能个人媒体平台 ~本篇坑可能真的有点大,需要大家伙自行研究,愿意折腾的可以试试。

项目

之后就在网上发现了这个项目:Aria2-AriaNg-X docker-compose。好家伙,这个作者挖的这个坑可真算是大,Aria2+H5ai/Nextcloud/Filerun+Dockercompose,这一堆看着都眼花。但是用起来真的很方便:

Github地址:https://github.com/wahyd4/aria2-ariang-x-docker-compose

分别解释一下:

  • Aria2/AriaNg:Aria2是一款自由、跨平台命令行界面的下载管理器,支持HTTP、HTTPS、FTP、Bittorrent和Metalink等下载协议,AriaNg 是一个让aria2 更容易使用的Web 前端
  • X:H5ai/Nextcloud/Filerun,作者的X指的是文件管理软件,可以使H5ai/Nextcloud/Filerun三选一
  • Plex:主打流媒体传输的软件,支持远程访问,有强大的兼容性。

这个项目是提供一个 docker-compose文件,让你可以一步就拥有一个集图形化界面的 Aria2下载(AriaNg)和在线预览和管理文件的平台,甚至还包括Plex这样的媒体终端。

H5ai/Nextcloud/Filerun都是提供了一个文件管理界面,他们之间的对比情况:(直接盗用官方图)
chrome_lZOtCQNVXW.png

选择

我的主要目的就是看视频,能远程下载,支持磁力链等多种形式,轻量,不需要强大的文件管理能力,也不需要功能太复杂的,所以我选择:

Aira2-Aria2NG-H5ai-Plex这一套组合。H5ai用来移动端看视频,也可以给别人分享,Plex用来在家里电视、投影上看视频。

什么选择docker?

选择Docker是一个很好的理由,你可能对docker不熟悉,但是它极大的方便了我们部署这些应用。特别是在本例中,我们一下要部署4-5个应用,每一个单独操作部署的话工作量非常大。

而且这个项目使用了Docker-compose,更是极大的缩短了部署多个应用的周期,它把所有的部署操作都放在了 docker-compose.yml中,作者也很好的编排了步骤,三四条命令即可完成。

搭建

准备VPS
一台VPS,最好1g以上内存,硬盘越大越好,有一定网速。可以是内网也可以是外网,这里有两个选择:

  • 安装在家里的内网环境,外网访问用Frp或者DDNS实现。(比如我放在家里的HTPC上,Hyper-V虚拟Ubuntu)
  • 安装在公网的VPS上。一般选择大硬盘、大带宽的服务商。

这两种看你本地网络的实际情况,各有利弊。一般来说:

  • 储能力:安装在外网的VPS上需要一个大容量的硬盘,但是大盘鸡一般来说比较贵,比如500g的一年费用大约的30-50刀,但是如果在内网环境无非就是多挂块硬盘。
  • 网络能力:安装在外网VPS上访问非常便携,特别是对于无公网IP的具有较好的访问性,手机家里办公室都能访问,但是速度不一定有保证。在内网环境的话,如果想在办公室访问需要穿透内网,速度又成了一个问题,我是依靠一个国内的50M大宽带VPS来做FRP穿透。

到底部署在内网或者外网,你们看自己的情况选择吧。

环境准备

(操作系统Ubuntu 18.04)

安装Docker、Docker-compose和Git

sudo apt-get install git      /安装git

wget -qO- https://get.docker.com/ | sh   /安装Docker

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose   /安装Docker-compose

sudo chmod +x /usr/local/bin/docker-compose   /安装Docker-compose

下载aria2-ariang-x-docker-compose

git clone https://github.com/wahyd4/aria2-ariang-x-docker-compose.git
cd aria2-ariang-x-docker-compose/plex-h5ai

前往 https://www.plex.tv/claim/ 获取 TOKEN, 并填充至 plex-h5ai 目录下的 docker-compose.yml下的 PLEX_CLAIM字段。
chrome_9ITWannPYG.png

编辑docker-compose.yml配置文件

nano docker-compose.yml

Xshell_fCDu3G10xT.png

运行Docker

docker-compose up -d

Xshell_ICKRpH3MV6.png

到这里整个部署就结束了。


其他补充

我部署在家里的时候,对ubuntu外挂了一块硬盘,需要额外添加一块硬盘,可以参考我以下教程:为ubuntu添加新硬盘
下载的文件我希望能够通过网上邻居共享访问,所以部署了Samba,可以看我以下教程:利用Docker搭建samba服务
在外网访问的时候,需要做用Frp或者ddns穿透,可以参考我前期教程:利用Docker搭建FRP内网穿透
如果是挂载其他盘,需要修改docker-compose.yml中的Volume映射关系。

使用

(以下假设服务器ip地址是45.76.211.228,ip换成你自己的地址,内网或VPS)

此外,还需要443/6800/3005/8324等端口,如果出现端口占用肯定是端口被其他程序占用了,也是在docker-compose.yml中修改端口。

离线下载

Aria2支持的协议很多,所以自己在网上随便找资源吧。

磁力链的网站百度一搜一大堆,甚至直接搜电影名+磁力链都能搜出来。

如果是在外网布置的话,下载速度将非常快,因为毕竟在人家机房,大带宽,分分钟跑满带宽。

H5ai在线观看

H5ai不用验证,轻量简单,平时在手机上直接Chrome浏览器打开直接看。
rRWCUCj6xm.jpg

Plex使用

Plex第一次使用要添加媒体库,媒体库下载的位置在/media

chrome_6cvQYtyPNn.png
chrome_DGoxbadhpg.png

只要在plex上看的节目,不论在哪个客户端打开,都能急着看,真心方便啊。然,Plex更多的高级功能这里不说了,不在本篇讨论范围,大家可以自行研究。


存储空间不够

对于存储空间的问题,这个很大程度上要看你的需求。目前Vultr最低5刀的也有25g的空间,使用环境大概18g左右,平时追追番、看看美剧啥的,清晰度要求也不高,经常删除也是够了,毕竟这个不是主力,还有NAS在那准备着。当然如果有500g-1T的大盘鸡当VPS也是很好的。

Aria2没有速度

如果在内网环境请做端口转发,外网环境在Aira2中添加自己的IP地址(Vultr至少是这样解决的)。Aira2没有速度的原因有很多,我也没法全都涵盖。

总结

本项目实际上就是把多个项目组合在一起,集成了下载、文件与媒体管理于一体的媒体中心。此外,项目还提供了Nextcloud这样强大的网盘程序,不喜欢H5ai的可以换成Nextcloud或者Filerun,这两款软件我以前都介绍过,可以看:网盘私有化-应对公共网盘危机 和 私人网盘Filerun搭建和使用教程。下载方面Aira2可以说是万金油,配合Aria2NG应该是最好的体验了。媒体管理方面,比较出众的比如kodi/plex等都是不错的,Plex在兼容性方面非常强大,具体教程可搜一下张大妈里面有不少介绍Plex的文章。

Last modification:March 13, 2019
如果觉得我的文章对你有用,请随意赞赏