📺 DecoTV 全能部署指南:极致速度与合规化运营
官方项目地址:https://github.com/Decohererk/DecoTV
📖 前言
DecoTV 是一款功能强大的影视聚合管理系统。相比 MOTV,它最大的特色是支持 TVBox (CatVod) 协议输出 和极其细致的 用户/采集源权限管理。通过搭配搬瓦工 MegaBOX-PRO 的高端线路和 Cloudflare Workers 的隐私中转,我们可以打造一个既快又安全的私有影视库。
🛠️ 第一阶段:服务器基础环境搭建
在正式部署 DecoTV 之前,我们需要先在 VPS上安装 Docker 引擎。
1. 登录 VPS 并更新系统
使用终端连接您的 VPS,执行以下初始化命令:
# 更新软件包列表
apt update && apt upgrade -y
# 安装基础依赖工具
apt install curl wget git -y
2. 一键安装 Docker 引擎
直接使用官方提供的安装脚本,简单且不会出错:
# 下载并运行 Docker 安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
# 启动 Docker 并设置开机自启
systemctl start docker
systemctl enable docker
3. 安装 Docker Compose
这是管理多容器项目的必备工具:
# 下载 Docker Compose 二进制文件
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 赋予可执行权限
chmod +x /usr/local/bin/docker-compose
🚀 第二阶段:DecoTV 后端核心部署
1. 创建工作目录
# 建议存放在 /opt 目录下
mkdir -p /opt/decotv && cd /opt/decotv
2. 编写部署配置文件
创建 docker-compose.yml 文件:
nano docker-compose.yml粘贴以下内容(根据实际镜像进行调整):
Kvrocks 存储(推荐)(根据官方仓库选择,可选Redis 存储(有一定的丢数据风险))
services:
decotv-core:
image: ghcr.io/decohererk/decotv:latest # 或使用 :v1.0.0 固定版本
container_name: decotv-core
restart: on-failure
ports:
- '3000:3000'
environment:
- USERNAME=admin #站长用户名
- PASSWORD=admin_password #密码
#- NEXT_PUBLIC_SITE_NAME=YKF-TV (自定义站点)
- NEXT_PUBLIC_STORAGE_TYPE=kvrocks
- KVROCKS_URL=redis://decotv-kvrocks:6666
networks:
- decotv-network
depends_on:
- decotv-kvrocks
decotv-kvrocks:
image: apache/kvrocks
container_name: decotv-kvrocks
restart: unless-stopped
volumes:
- kvrocks-data:/var/lib/kvrocks
networks:
- decotv-network
networks:
decotv-network:
driver: bridge
volumes:
kvrocks-data:或使用自用配置文件:docker-compose-lKlK.yml (记得更改名称为:docker-compose.yml)
3. 启动服务
docker-compose up -d🛡️ 第三阶段:Cloudflare Worker 隐私中转(重点)
为了保护在观看敏感源的隐私,我们利用 Cloudflare Worker 进行流量脱敏。
1. 部署 Worker 脚本
登录 Cloudflare,创建一个名为
aaa-tv-api的 Worker。在“绑定”设置中,添加一个 KV 命名空间,变量名设为
KV。将
worker.js完整代码粘贴进去并发布。(worker.js文件 点击跳转官方仓库:https://github.com/hafrey1/LunaTV-config)
2. IP 模糊化逻辑说明
该脚本会自动将访问者 IP 的末位掩盖(例如 123.123.123.45 变为 123.123.123.0)。这样即便你在 Cloudflare 查看日志,也无法回溯到具体的物理位置。
⚙️ 第四阶段:系统初始化与权限分配
登录你的管理后台(例如 http://your-ip:3000),进行如下合规化设置:
1. 物理隔离资源组
创建“家庭”组:仅勾选 正规影视源。
创建“18禁”组:勾选敏感源。
2. 用户账号管理
(站长):拥有无限制权限。
(普通用户):将其划入“家庭”组,采集权限设为“无限制”。
🧹 第五阶段:安全增强与清理(进阶)
为了确保这台高端 VPS 的 IP 纯净,建议在 Crontab 中添加定时任务:
Bash
# 创建清理脚本
nano /root/cleanup.sh
# 粘贴以下内容
#!/bin/bash
cat /dev/null > /var/log/wtmp
cat /dev/null > /var/log/lastlog
find /var/lib/docker/containers/ -name '*-json.log' -exec truncate -s 0 {} \;
# 设置权限
chmod +x /root/cleanup.sh
# 加入定时任务(每天凌晨执行)
(crontab -l 2>/dev/null; echo "0 3 * * * /root/cleanup.sh") | crontab -
📊 结语
通过以上步骤,你不仅拥有了一个极速响应的影视库,还通过 用户组权限控制 和 Cloudflare IP 模糊化 筑牢了安全防线。