MENU

全自动观影方案

2023 年 01 月 05 日 • 阅读: 1037 • 分享

本文章仅为个人日常记录,并不适用所有环境,请酌情修改!

前提条件

  1. VPS (建议 4C4G 1T 以上配置)
  2. Google 无限网盘
  3. 域名(已解析到 CloudFlare)
  4. 一个或多个 PT 站(M-Team、LemonHD、HDSky...)
  5. Movie Robot 密钥
  6. 企业微信

一、解析域名

  1. 登录 CloudFlare
  2. 添加解析域名(jellyfin/plex、qb、robot)
    DNS 解析

二、设置 Google API

  1. 登录 Google Cloud
  2. 选择 API 和服务-OAuth 同意屏幕Google API
  3. 添加-选择外部-填写相关信息并发布Google API 2
  4. 点击侧边栏 凭据 - +CREATE CREDENTIALS - OAuth 客户端 ID
  5. 应用类型选择桌面应用,点击创建
  6. 记录客户端 ID、客户端密钥
    Google API 3

三、配置 VPS 相关环境

1. VPS 安装宝塔面板

Centos:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec

Ubuntu:

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec

安装成功后输入 bt,选择 14,再次显示面板提示信息
宝塔面板信息

2. 安装 Rclone 并挂载

No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> This value is required and it has no default.
n/s/q>n //新建网盘

name>jellyfin

Storage>17 //谷歌云盘

client_id> //第二步记录的客户端ID

client_secret> //第二步记录的客户端密钥

scope> 1 //完整的控制权限

root_folder_id> //保持默认
service_account_file> //同上

Edit advanced config?
y) Yes
n) No (default)
y/n>n

Use auto config?

* Say Y if not sure
* Say N if you are working on a remote or headless machine
  y) Yes (default)
  n) No
  y/n> n

Enter a value.
config_token> //填入获取到的授权密钥(连接网盘的账户)

Configure this as a Shared Drive (Team Drive)?
y) Yes
n) No (default)
y/n>yes(团队盘选择 y)

y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

Name                 Type
====                 ====
xxx                  drive
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q //退出

挂载网盘到本地

mkdir -p /home/gdrive
chmod 777 /home/gdrive

以下代码全部粘贴到命令行

cat > /etc/systemd/system/rclone.service <<EOF
[Unit]
Description=Rclone
AssertPathIsDirectory=/home/gdrive
After=network-online.target

[Service]
Type=simple
ExecStart=/usr/bin/rclone mount jellyfin: /home/gdrive \
 --umask 0000 \
 --default-permissions \
 --allow-non-empty \
 --allow-other \
 --buffer-size 32M \
 --dir-cache-time 12h \
 --vfs-read-chunk-size 64M \
 --vfs-read-chunk-size-limit 1G
ExecStop=/bin/fusermount -u /home/gdrive
Restart=on-abort
User=root

[Install]
WantedBy=default.target
EOF
systemctl strat rclone.service //启动服务(挂载到本地)
systemctl enable rclone.service //开机启动

常用命令

systemctl strat rclone.service //启动服务(挂载到本地)
fusermount -u /home/gdrive //取消挂载
systemctl status rclone.service -l //查询运行状态
systemctl stop rclone.service //停止服务
systemctl restrat rclone.service //重启服务
systemctl enable rclone.service //开机启动
systemctl disable rclone.service //取消开机启动
systemctl daemon-reload //重载配置

四、安装 Docker 相关服务

1. 安装 Docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh

安装完成后输入 "docker info" 查看信息
docker

2.安装 Jellyfin

docker pull jellyfin/jellyfin:latest
docker run -itd --name=jellyfin --restart always --network host \
-p 8096:8096 \
-v /home/Jellyfin/config:/config \
-v /home/Jellyfin/cache:/cache \
-v /home/Video:/media \
jellyfin/jellyfin:latest

3.安装 Watchtower

每天 6:00、23:00 自动检查更新所有容器

docker pull containrrr/watchtower
docker run -d \
--name watchtower \
--restart always \
-e TZ=Asia/Shanghai \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower \
--cleanup \
-s "0 0 6,23 * * ?"

4. 安装 Movie Robot

docker pull yipengfei/movie-robot:beta
docker run -itd --name=movie-robot --restart always --network host \
-p 1329:1329 \
-v /mnt/sdb/Movie-Robot:/data \
-v /home/Downloads:/home/Downloads \
-v /home/EndlessJY:/home/EndlessJY \
-v /home/Video:/home/Video \
--env '授权密钥' \
yipengfei/movie-robot:beta

五、安装下载器(qBittorrent)

更新软件包

sudo apt update
sudo apt upgrade

安装 add-apt-repository 命令

sudo apt-get install software-properties-common -y

添加 qBittorrent PPA 源:

# qBittorrent
sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-stable

中间 回车 继续或者 Ctrl+C 取消

安装 qbittorrent-nox

sudo apt update
sudo apt-get install qbittorrent-nox -y

设置开机启动

nano /etc/systemd/system/qbittorrent-nox.service

[Unit]
Description=qBittorrent-nox
After=network.target
[Service]
User=root
Type=forking
RemainAfterExit=yes
ExecStart=/usr/bin/qbittorrent-nox -d
[Install]
WantedBy=multi-user.target

相关命令

修改 qbittorrent-nox.service 文件后重新载入

sudo systemctl daemon-reload //重新载入启动文件
sudo systemctl start qbittorrent-nox //启动
sudo systemctl stop qbittorrent-nox //停止
sudo systemctl enable qbittorrent-nox //开机自启
sudo systemctl status qbittorrent-nox //查看状态

放开端口 8080 输入 ip:8080 打开 Qbittorrent webui

初始账号 admin,密码:adminadmin

六、宝塔面板相关设置

1. 开放端口

分别开放 Jellyfin 8096、qBittorrent 8080、Movie Robot 1329 端口
开放端口

2.添加站点 开启 SSL

添加站点

软件商店-运行环境-安装 Nginx
网站-添加站点-分别添加 Plex、qBittorrent、Movie Robot 三个站点

开启 SSL

点击站点-SSL-Let's Encrypt-申请证书-开启强制 HTTPS 开关

3. 反向代理

分别修改三个站点的配置文件

location ~ ^/.* {
        proxy_pass http://127.0.0.1:8096; # 8080、1329
        proxy_set_header Host             $host;
        proxy_set_header X-Real-IP        $remote_addr;
        proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
    
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;
        proxy_http_version 1.1;
    
        proxy_redirect off;
    }

七、相关资料

Movie Robot:
GitHubWiki

媒体库:
JellyfinPlex

八、帮助

提供全流程搭建及咨询服务

请自备:
VPS、域名、企业微信、PT 站、Movie Robot 密钥、Google 无限网盘

域名 免费提供,一年有效期
Google 无限网盘 免费提供,但不保证长期可用
TelegeamWeChat

返回文章列表 文章二维码 打赏
本页链接的二维码
打赏二维码
歌曲封面
0:00