再来谈谈Emby+Google Drive的私人影视库搭建


经过几个月的摸索,基于Emby+Google Drive的私人影视库算是进入生产模式了。

上回说到:《Docker部署EMBY》,那今天就来谈谈我的部署,希望对你有所启发。

如果你是在本地部署,推荐购买N1盒子,可以参考《N1盒子搭载Armbian运行Emby媒体服务》

如果你希望部署便捷实用的远程半自动下载机,可以参考《BUYVM下载机部署指南》

 

一、关于Emby和Plex的选择

其实很早以前我就冲动地买了Plex 终身Pass,但不论从插件还是UI,总觉得Plex的设计逻辑和审美还停留在十年前,虽然今年Plex的免费电视直播和免费影视剧的内容提升很大,但终究这不是一款IPTV的工具呀。

而后,试用了一段时间Jellyfin,老实讲,如果不是资料库强迫症患者,Jellyfin用户没必要切换成付费的Emby用户,Jellyfin尴尬的介于Plex和Emby之间的资料库整理结果,让我不得不上了Emby的车。

总之,如果你想要炫酷的海报墙,相对完整的片源资料信息,Emby是不二选择。

 

二、关于Emby的部署

一开始,我是把Emby部署在家里的N1盒子里的,Docker模式。虽然家里有QNAP NAS,但Emby启动扫描模式时对CPU的摧残,一度让我想把家里的NAS换掉。

在本地部署Emby,用Rclone挂载GD、TD、OD或者本地NAS里的片源,读取本地片源特别流畅,但一旦播放GD,对科学上网的线路要求就很高了。碰上晚高峰,就基本别想痛快地观影。即便用中转。

于是,我开始把Emby部署在国外VPS上。

考虑到Emby一旦进入扫描模式,特别吃资源,故购买了一台ColoCrossing 24刀独服(E3-1240V3 16G)4核4G的机器。当然,我也入手了一台Cloudcone的圣诞节促销款,2核3G机器,也很美好。带宽,建议是200M以上,这样和GD通讯起来有基本保障。

 

三、关于网络优化

谁都知道,只要是国外VPS,网络环境都很不确定,那么到底是挂代理看,还是中转,还是反向代理来加速呢?
我的建议是如果有条件用中转,就没必要挂代理。

我现在的方式是,把Emby部署在美西三网直连的独服上,再用白丝云美西4837反代。LVPS的4核AMD机器上,由于这台机器在德国HETZNER机房,于是我又购买了一台Olink的德国AS9929专线来中转。这样一来,每一个环节都几乎没有损耗,搭配上家里的联通G口宽带,Emby的体验就变得美好起来了。

如果想少花钱,可以直接买国内NAT机。

或者不想折腾,直接买端口转发服务也可以。

比如NekoNeko的中转服务,碳云最近上线了端口转发服务,线路众多,体验也不错。

 

四、关于部署Emby的几项核心技术

哪有什么核心技术,无非就是要掌握

1、安装SWAP和BBR

如果是高内存机器,SWAP可以不用装。

如果是低内存,一定要装,否则一旦开始定时扫描,就没办法正常使用了。

安装脚本来自:Rat's Blog

wget https://www.moerats.com/usr/shell/swap.sh && bash swap.sh

 

BBR是必须要安装的,脚本来自:秋水逸冰
如果是Ubuntu或者Debian之类,安装过程很简单,如果是CentOS,建议去源站查看完整版教程。

wget --no-check-certificate -O /opt/bbr.sh https://github.com/teddysun/across/raw/master/bbr.sh
chmod 755 /opt/bbr.sh
/opt/bbr.sh

 

检查:

uname -r
#查看内核版本,显示为最新版就表示 OK 了
sysctl net.ipv4.tcp_available_congestion_control
#返回值一般为:net.ipv4.tcp_available_congestion_control = bbr cubic reno
#或者为:net.ipv4.tcp_available_congestion_control = reno cubic bbr
sysctl net.ipv4.tcp_congestion_control
#返回值一般为:net.ipv4.tcp_congestion_control = bbr
sysctl net.core.default_qdisc
#返回值一般为:net.core.default_qdisc = fq
lsmod | grep bbr
#返回值有 tcp_bbr 模块即说明 bbr 已启动。注意:并不是所有的 VPS 都会有此返回值,若没有也属正常。

 

2、安装Rclone并挂载、安装Docker、安装Docker版Emby

#安装Rclone:

curl https://rclone.org/install.sh | sudo bash

#配置:

rclone config

 

#安装Docker

curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

 

#拉取和安装EMBY

docker pull emby/embyserver:latest
docker run -d --name=emby --restart=always -v /root/emby/config:/config -v /root/emby/share1:/mnt/share1 -v /root/emby/share2:/mnt/share2 -p 8096:8096 -p 8920:8920 -e UID=1000 -e GID=100 -e GIDLIST=100 emby/embyserver:latest

 

完整内容请看这里:Docker部署EMBY

 

3、配置端口转发或配置中转机器

端口转发很简单,访问端口转发面板,填入Emby的IP或域名及端口号,转发成功后,用端口转发面板给出的IP地址和端口访问就行了。

中转机器的配置其实也很简单,可以用这篇文章介绍的firewalld模式,也可以直接用系统自带的iptables模式。
当然,如果你中转机器很多,也可以部署一个中转管理面板,比如极光面板就非常好用。

关于极光面板的部署,请参考这里

 

五、【2021.01.27更新】用Caddy部署端口反代

一直想用80和443来访问Emby,但一直没好好学习Caddy,毕竟只是个端口反代,也没必要部署Nginx,恰好今天有空,就用Caddy部署一下,遂记录:

1、安装Caddy

#添加caddy官方的软件源,更新软件包并安装caddy v2

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" \
    | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
sudo apt update
sudo apt install caddy

 

2、配置Caddyfile

nano /etc/caddy/Caddyfile

 

xx.xx.xx {
    reverse_proxy localhost:8096
}

 

3、其他Caddyfile用法

#普通建站

xx.xx.xx:80 {
    respond "Hello, Bitch!"
}
xx.xx.xx:443 {
    respond "Hello, Bitch!"
}

 

#卸载Caddy

Caddy的二进制文件的位置应该为如下两处之一

/usr/bin/caddy
/usr/local/bin/caddy

直接删除这个二进制文件,并停止服务,再手动kill进程或重启。

rm -rf /usr/bin/caddy
systemctl disable caddy.service

或者

sudo rm /etc/apt/sources.list.d/caddy-stable.list
sudo apt remove caddy

 

 

#Caddy会自动签署SSL证书,证书存放在

/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory

 

4、Caddy的操作命令

systemctl enable caddy.service   # 开机启动
systemctl start caddy.service    # 启动
systemctl stop caddy.service     # 停止
systemctl restart caddy.service  # 重启
systemctl status caddy.service   # 查看状态
systemctl daemon-reload          # 重载配置

 

 

相关阅读:

Docker部署EMBY

因为买了嘎鱼饭GD团队盘影片库,所以最近在折腾EMBY。在NAS、OPENWRT软路由、PVE下的WINDOWS虚拟机、VPS上都试过,都不太爽,原因其实还是本地科学上网环境的问题,造成体验很差。遂开始琢磨在VPS上搭建EMBY。

N1盒子搭载Armbian运行Emby媒体服务

在OpenWrt环境下运营Rclone+Docker+Emby,但NFS挂载NAS出现问题。憋了几天,特别郁闷,也不想全网搜解决小问题的办法,心想OpenWrt整不明白,Linux我会呀。于是,心一横,把N1刷成了Armbian服务器。痛快了!遂记录。

 

打完收工!

 

阅读剩余
THE END