前言
由于最近 Netflix
清退了一大批低价区用户,并且不退款,需要与银行争议,就开了一个月的土耳其区,然而土耳其第一个月并不能用土耳其之外的 IP
观看,白白浪费一个月,虽然最近尼日利亚的低价已经超过了巴基斯坦,但还是决定放弃了,花钱找罪受,不如买个 Emby
。
之后在网上看到可以通过服务器部署 Plex Media Server
,将 Alist
挂载到服务器,Plex
添加 Alist
目录,然后 infuse
连接 Plex
,这样可以实现刮削,并且全平台同步,还可以搭配 Aria2
下载自动上传网盘,达到良好的观影效果。
一、可执行程序部署
1. 部署 Plex
部署可以通过可执行程序,也可以通过 docker
,如果想挂载 alist ,记得和 alist
程序安装在同一台服务器。
部署程序
1# centos
2yum -y update && yum -y install
3wget https://downloads.plex.tv/plex-media-server-new/1.32.8.7639-fb6452ebf/redhat/plexmediaserver-1.32.8.7639-fb6452ebf.x86_64.rpm
4yum install plexmediaserver*.rpm
5# Debian/Ubuntu系统
6apt-get -y update && apt-get -y upgrade
7wget https://downloads.plex.tv/plex-media-server-new/1.32.8.7639-fb6452ebf/debian/plexmediaserver_1.32.8.7639-fb6452ebf_amd64.deb
8dpkg -i plexmediaserver*.deb
设置开机自启
1systemctl enable plexmediaserver.service
2systemctl start plexmediaserver.service
3# 状态查询
4systemctl status plexmediaserver.service
安装完成可以通过 http://ip地址:32400 进入后台管理,如果运行正常却无法打开,可能是防火墙问题,命令如下,也可以宝塔面板直接放行。
1#CentOS 7
2systemctl stop firewalld.service
3systemctl disable firewalld.service
4#其它系统
5iptables -I INPUT -p tcp --dport 32400 -j ACCEPT
6service iptables save
7service iptables restart
2. 后台设置
安装完成后进入后台会发现无法找到服务器,这是因为 Plex
安全策略,第一次登录只允许本地 IP
可以通过端口转发或隧道转发解决。
端口转发
Windows 打开 Power shell
,然后通过下列命令连接服务器:
1ssh root@服务器IP -L 8888:localhost:32400
浏览器打开:http://localhost:8888/web
就可以正常设置。
隧道转发
这里以 FinalShell
为例,ssh 连接设置中添加如下隧道
连接服务器,浏览器打开 http://localhost:8888/web
即可。
3. 卸载
1# centos
2rpm -e plexmediaserver
3rm -rf/var/lib/plexmediaserver/
4userdel plex
5
6# ubuntu/debian
7dpkg -r plexmediaserver
8rm -rf /var/lib/plexmediaserver/Library/Application Support/Plex Media Server/
二、Docker 部署
1. 安装 docker 和 docker-compose
1# 卸载旧版本
2sudo apt-get remove docker \
3 docker-engine \
4 docker.io
5curl -fsSL get.docker.com -o get-docker.sh
6# 启动并设置开机自启
7sudo systemctl enable docker
8sudo systemctl start docker
9# 安装 docker-compose
10sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
11sudo chmod +x /usr/local/bin/docker-compose
12# 可用以下命令测试安装
13docker-compose --version
2. 创建目录
1sudo mkdir /plex
2sudo mkdir /plex/{data,tv,movies}
3cd /plex
4vim ./docker-compose.yml
粘贴下列命令
1services:
2 plex:
3 image: lscr.io/linuxserver/plex:latest
4 container_name: plex
5 network_mode: host
6 environment:
7 - PUID=1000
8 - PGID=1000
9 - TZ=Asia/Shanghai
10 - VERSION=docker
11 - PLEX_CLAIM= #optional
12 volumes:
13 - /plex/data:/config # Library 目录,可能变得很大
14 - /plex/tv:/tv
15 - /plex/movies:/movies
16 # - /CloudNAS:/CloudNAS # 这是将 Clouddrive 的挂载目录映射到 plex 容器中,也可以更换
17 restart: unless-stopped
PUID
和PGID
用于配置容器内进程的UID
和GID
,全都设置为0
表示以root
用户运行,如果你这里不是很明白的话可以无脑设置为0
以避免部分权限问题PLEX_CLAIM
环境变量用于认证自己的服务器,可以从 这里 获取(注意需要可用的plex账号), 另外claim
的有效期一般只有 4 分钟 ,如果服务器网络不佳,建议先通过执行docker-compose pull
拉取镜像之后再获取,防止过期(虽说过期后再重新 claim 也行)
3. 启动容器
1docker-compose up -d
浏览器打开 http://IP地址:32400/web
进入后台,出现无法找到服务器同样需要通过映射本地端口。
三、挂载网盘
💡 挂载程序有很多,这里以 rclone
和 cloudrive2
(推荐)为例。
1. rclone
首先安装依赖和程序
1# 安装依赖
2apt-get install fuse3
3# 安装 rclone
4curl https://rclone.org/install.sh | sudo bash
接下来设置 rclone,终端输入 rclone config
,随后输入 n
添加远程设备,这里接下来的代码直接参考别人的:
1# 选择新远程
2No remotes found, make a new one?
3n) New remote
4s) Set configuration password
5q) Quit config
6n/s/q> n #这里选择n
7
8# 设置名字
9name> remote
10Type of storage to configure.
11Choose a number from below, or type in your own value
12[snip]
13XX / WebDAV
14 \ "webdav"
15[snip]
16Storage> webdav #这里输入远程的名字,之后就是你的远程名称
17
18# 设置远程地址url http://your_alist_ip:port/dav
19URL of http host to connect to
20Choose a number from below, or type in your own value
21 1 / Connect to example.com
22 \ "https://example.com"
23url> http://127.0.0.1:5244/dav #这里设置alist的地址和端口,后面要带dav,这是alist要求的
24
25# 这里选6就可以了,1-5都不是我们使用的
26Name of the WebDAV site/service/software you are using
27Choose a number from below, or type in your own value
28 1 / Fastmail Files
29 \ (fastmail)
30 2 / Nextcloud
31 \ (nextcloud)
32 3 / Owncloud
33 \ (owncloud)
34 4 / Sharepoint Online, authenticated by Microsoft account
35 \ (sharepoint)
36 5 / Sharepoint with NTLM authentication, usually self-hosted or on-premises
37 \ (sharepoint-ntlm)
38 6 / Other site/service or software
39 \ (other)
40vendor> 6
41
42# 设置远程账号
43User name
44user> admin #这里是你alist的密码
45
46# 设置远程密码
47Password.
48y) Yes type in my own password
49g) Generate random password
50n) No leave this optional password blank
51y/g/n> y #这里输入y
52Enter the password: #这输入你的密码,密码是看不到的
53password:
54Confirm the password: #再次输入你的密码
55password:
56
57# 这里直接回车即可
58Bearer token instead of user/pass (e.g. a Macaroon)
59bearer_token>
60Remote config
61
62# 这里可能会问你是默认还是高级,选择默认即可
63
64# 你的远程信息
65--------------------
66[remote]
67type = webdav
68url = http://127.0.0.1:5244/dav
69vendor = Other
70user = admin
71pass = *** ENCRYPTED ***
72--------------------
73
74# 确认
75y) Yes this is OK
76e) Edit this remote
77d) Delete this remote
78y/e/d> y #输入y即可,
79
80# 最后按q退出设置
连接后需要挂载到本地,输入如下命令:
1# 最后的 daemon 是后台挂载
2rclone mount 远程网盘名字:/ /本地挂载地址 --cache-dir /tmp --allow-other --vfs-cache-mode writes --allow-non-empty --daemon
这样虽然后台挂载了,但是每次重启都需要重新运行,我们可以设置一个开机自启的文件:
1#创建service文件
2vim /usr/lib/systemd/system/rclone.service
输入如下内容:
1[Unit]
2Description=rclone
3
4[Service]
5User=root
6ExecStart=/usr/bin/rclone mount 远程网盘名字:/ /本地挂载目录 --cache-dir /tmp --allow-other --vfs-cache-mode writes --allow-non-empty --daemon
7[Install]
8WantedBy=multi-user.target
重载配置文件,并设置开机自启:
1# reload守护进程
2systemctl daemon-reload
3
4# 设置service文件自启
5systemctl enable rclone.service
6
7# 启动service文件
8systemctl start rclone.service
2. Clouddrive2
rclone
需要命令行操作,并且使用过程中出现了一些问题,这里推荐另一种有 web
界面的挂载方式 clouddrive2
,官网地址如下:
安装非常简单,直接使用别人做好的一键脚本,通过 docker
安装,地址如下:
https://github.com/sublaim/clouddrive2
- 安装命令
1# 国内加速(推荐)
2curl -fsSL "https://mirror.ghproxy.com/https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s install mirror
3# 代理
4curl -fsSL "https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s install
- 卸载命令
1# 国内加速(推荐)
2curl -fsSL "https://mirror.ghproxy.com/https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s uninstall mirror
3# 代理
4curl -fsSL "https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s uninstall
💡 注意:如果
plex
是通过docker
安装的,需要添加-v
参数,将clouddrive2
映射的目录映射到plex
中。
- 设置后台。安装完成后终端会输出访问地址,通过
http://ip:19798
就可以访问。 - 进入后首先注册账号,然后点击云朵图标添加网盘,选择
webdav
, 设置地址如下:
- 挂载
webdav
到本机,先点击右上角的电脑图标,然后挂载到/CloudNAS
目录下,可以修改一下权限。
💡 注意:clouddrive 免费用户只可以添加两个网盘,挂载一个网盘,但我们可以首先通过 alist 挂载所有网盘,再将 alist 通过 webdav 挂载。
这样所有的安装都结束了,我们可以在 plex
中设置媒体文件夹,刮削完后可以在移动端通过 infuse
、vidhub
等应用挂载 plex
,这样就能拥有一个资源丰富界面精美的媒体库。
参考
最后修改于 2024-02-09