介绍
自动安装Rclone、Docker,自动部署Plex服务端、Nginx服务端并自动签发SSL证书。
Nginx服务端自动对Plex服务端进行反带,使用自定义域名即可通过HTTPS对Plex进行访问,还可以将此域名直接接入CF进行加速。
系统要求
本文以Debian/Ubuntu系统为例
VPS:带宽最好大于100MB,性能不做要求
域名:用于CDN加速,可先对vps IP地址进行绑定
CF账号:选配项,用于CDN加速
使用方法
sudo curl https://install.emengweb.com/plex.sh | sudo bash
运行脚本,进行自动化安装。
脚本会自动创建/plex
目录,并将docker-compose等资源文件放在此目录下。
配置Docker Compose文件
运行脚本之后,您还需要完成以下配置:
- 设置
域名DNS解析
到本机IP- 修改
/plex/docker-compose.yml
文件,确保正确设置FQDN
-域名及邮箱地址CERTBOT_EMAIL
- 将Rclone磁盘映射至/plex/disk的子目录下,例如:
/plex/disk/gd
启动Plex容器
以上准备工作完成后,输入以下命令启动 plex docker 容器。
cd /plex docker-compose up -d
配置Plex
Plex启动之后,需要通过ssh端口映射到本机
才能进入管理员配置界面,将vps的32400端口映射至127.0.0.1:32400端口,用浏览器打开127.0.0.1:32400
:
设置Plex的别名、媒体库设置可以先跳过。
设置完成后,点击进入到Plex服务器主界面,记得登录自己的Plex账号,并声明服务器
。
配置Plex外部访问及关闭官方中继加速(减速)
进入Plex服务器设置,确保开启“显示高级设置”。
进入“网络”选项卡,滚动到页尾:
- 找到“
Custom server access URLs
”,添加自定义访问URL,例:http://<vps ip>:80
,如果已绑定cf域名还可输入域名地址,多个网址使用英文,进行分隔(端口
记得于docker设置中保持一致)- 取消勾选"
Enable Relay
",将停用Plex官方的中继加速服务,因为我们有独立IP且中继服务实际有带宽限制,实际对我们来说是减速行为,这里要关掉。
进入“远程访问选项”卡
- 点击“禁用远程访问”,由于已经设置了外部访问的IP和域名,这里我们将阻止所有其他的访问,避免类似中继对访问Plex服务照成负面影响
配置Plex转码加速
进入“转码器”选项卡
- 性能一般:勾选“
Disable video stream transcoding
”。例如只有1~2核的情况,建议关闭视频转码,使用原码率观看影片,只要带宽足够,实测在播放20G的文件时也很流畅。- 性能不错:勾选“
Use hardware acceleration when available
”及“Use hardware-accelerated video encoding
”,开启硬件加速。
添加媒体库
(略)
开启Plex新世界的大门
现在,使用http://<ip或域名>
直接访问Plex的服务,使用Web端或App就可以看到自己的Plex服务器了,播放视频速度也会快上许多。
Plex手机端APP设置
推荐使用APP进行观看,因为关闭转码之后,很多视频编码格式浏览器无法识别,使用网页端的Plex播放会提示没有足够的资源进行转码。
如果服务端关闭了视频转码,
Plex APP也需要关闭转码功能
,设置方法:
- 设置>质量,关闭“
自动调整质量
”,将“Remote streaming quality
”设置为“最高的
”,将“家庭串流
”设置为“最高的
”,取消“在移动网络使用低质量
”选项。
如果还有其他主机中转的需求,请参看另一篇“进阶篇”进行配置。
现在,开始享受自己的影音库吧。
附文
附上plex.sh源文件内容:
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin function rclone_install() { echo "检查Rclone......" rclone --version if [ $? -eq 0 ]; then echo "检查到Rclone已安装!" else echo -e "\n| Rclone is installing ... " curl https://rclone.org/install.sh | sudo bash # 安装fuse 支持 sudo apt-get install -y fuse fi } function docker_install() { echo "检查Docker......" docker -v if [ $? -eq 0 ]; then echo "检查到Docker已安装!" else # 安装Docker echo -e "\n| Docker is installing ... " sudo apt-get update -y curl -fsSL get.docker.com -o get-docker.sh sudo sh get-docker.sh rm -f get-docker.sh # 安装Docker Compose echo -e "\n| Docker Compose is installing ... " sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose fi # 创建公用网络==bridge模式 #docker network create share_network } function download_res() { echo -e "\n| Resource File Downloading ... " sudo mkdir /plex cd /plex sudo curl -L https://install.emengweb.com/plex.tar.gz -o /plex/plex.tar.gz sudo tar zxvf plex.tar.gz rm -f plex.tar.gz } clear echo "+============================================================+" echo "| Plex with Nginx&SSL Installer |" echo "| |" echo "| <emengweb@gmail.com> |" echo "|------------------------------------------------------------|" echo "| https://emengweb.com |" echo "+============================================================+" echo -e "\n| 此Docker将自动帮您完成Nginx及SSL反带的配置,此后可直接通过https://域名进行访问Plex." echo "" # 安装基础组件 echo -e "\n| Basic components is installing ... " sudo apt-get install -y curl # 安装Rclone rclone_install # 安装Docker docker_install # 下载配置资源文件 download_res # 启动Docker Compose #echo -e "\n| Docker Compose Starting ... " #sudo docker-compose up # 配置完毕 clear echo "+============================================================+" echo "| |" echo "| 目录配置 |" echo "| /plex/conf.d - Nginx虚拟主机配置目录 |" echo "| /plex/config:/config - Plex数据存储目录 |" echo "| /plex/transcode:/transcode - 转码预留目录 |" echo "| /plex/disk - Rclone请挂载在此目录下,例如gd目录 |" echo "| |" echo "+============================================================+" echo "" echo -e "\n| 配置完成." echo -e "\n| 您还需要完成以下配置:" echo -e "\n| 1、设置域名 DNS 解析到本机IP" echo -e "\n| 2、修改 '/plex/docker-compose.yml' 文件,确保正确设置'FQDN'-域名及邮箱地址 'CERTBOT_EMAIL'" echo -e "\n| 3、将Rclone磁盘映射至/plex/disk的子目录下,例如:/plex/disk/gd" echo -e "\n| 以上准备工作完成后,进入/plex文件夹,输入 'docker-compose up -d' 启动 plex docker 容器,记得先映射至127.0.0.1:32400端口,打开浏览器完成plex的配置。" echo -e "\n| 此Docker将自动帮您完成Nginx及SSL反带的配置,可直接通过https://域名进行访问Plex." echo -e "\n| 祝好运." #echo -e "\n| Done." #echo -e "\n| Please set a Doman Name Resolution First" #echo -e "\n| Then edit 'docker-compose.yml' file, be sure the 'CERTBOT_EMAIL' 'FQDN' be set correct" #echo -e "\n| Check the Rclone be mount on" #echo -e "\n| Then Input 'docker-compose up' to start plex docker"