VPS 折腾记:Xiaoya 小雅影音库部署



在 VPS 上部署 Xiaoya:一次完整的折腾记录

这篇记录包含:

  • Podman 运行 Xiaoya

  • 配置阿里云盘 Token

  • 抓取临时直链

  • 使用 Motrix 下载

  • 用 Jellyfin 播放

  • 以及踩坑总结

环境组合:

VPS + Podman + Xiaoya + 直链下载 + Motrix + Jellyfin

参考资源:

          https://xiaoya2026.notion.site/30a7836a88c080808f2af042483d430e 

           https://github.com/monlor/docker-xiaoya/blob/main/env

0️⃣ Xiaoya 是什么?

小雅(Xiaoya)是基于 Alist 深度魔改的资源聚合与播放工具。

它的核心功能:

  • 聚合公开的阿里云盘 / 115 网盘共享资源

  • 分类展示影视、动漫、剧集等内容

  • 一键部署

  • 自动转存

  • 生成临时直链

它不是传统播放器。

它更像:

  • 云盘资源调度器

  • API 桥接层

  • 临时签名直链生成器

支持:

  • WebDAV

  • TVBox

  • Emby

  • Jellyfin


1️⃣ 环境说明

部署环境:

  • VPS 系统:Oracle Linux

  • 容器引擎:Podman

  • 镜像:ghcr.io/monlor/xiaoya-alist:latest

  • 下载工具:Motrix

  • 播放工具:Jellyfin

推荐配置:

  • 内存 ≥ 1GB(推荐 2GB)

  • 放行 5678 端口

  • 或使用 Caddy/Nginx 做域名反代 http://xiaoya.example.com


2️⃣ 获取必要 Token

需要两个 Token:

🔑 Refresh Token

获取地址:

https://aliyuntoken.vercel.app/

🔑 Open Token

获取地址:

https://opentoken.xiaoya.pro/

生成后妥善保存。


3️⃣ ALIYUN_FOLDER_ID

登录网页版阿里云盘。

进入目标文件夹。

地址格式:

https://www.aliyundrive.com/drive/folder/60xxxxxxxxxxxx

folder/ 后那串就是:

ALIYUN_FOLDER_ID

⚠️ 如果忘记写:

  • 容器不会明显报错

  • 但转存行为可能异常

  • 看起来在运行,其实不工作


4️⃣ 创建环境变量文件

nano /home/opc/.xiaoya_env

写入:

ALIYUN_REFRESH_TOKEN=你的refresh_token
ALIYUN_OPEN_TOKEN=你的open_token
ALIYUN_FOLDER_ID=你的folder_id

AUTO_CLEAR_ENABLED=true
AUTO_CLEAR_INTERVAL=10
EMBY_ENABLED=false

5️⃣ 创建数据目录

mkdir -p /home/opc/docker/xiaoya/config
mkdir -p /home/opc/docker/xiaoya/www

6️⃣ 运行容器

sudo podman run -d \
  --restart=always \
  --name="xiaoya" \
  -p 5678:5678 \ -p 2345:2345 \ -p 2346:2346 \ 
  --env-file=/home/opc/.xiaoya_env \
  -v /home/opc/docker/xiaoya/config:/data:Z \
  -v /home/opc/docker/xiaoya/www:/www/data:Z \
  ghcr.io/monlor/xiaoya-alist

查看日志:

podman logs -f xiaoya

7️⃣ 访问服务

浏览器打开:

http://你的服务器IP:5678

或域名反代:

http://xiaoya.example.com  

8️⃣ 抓取视频直链

播放任意影片后,在 VPS 执行:

podman logs -f xiaoya

当出现:

新增下载直链: https://dl1-v6.aliyundrive.cloud/xxxx...

这条 URL 就是 临时签名 OSS 直链

它包含:

  • security-token

  • x-oss-access-key-id

  • x-oss-signature

  • x-oss-expires

⚠️ 必须完整复制
⚠️ 不可删除任何参数
⚠️ 有时间限制(通常 1~2 小时)


9️⃣ 使用 Motrix 下载

步骤:

  1. 打开 Motrix

  2. 新建任务

  3. 粘贴完整 URL

  4. 线程数 16~32

如果出现 403:

  • 链接过期

  • token 失效

  • 触发风控

重新触发播放 → 抓新直链。


🔟 更稳定的方式:直接在 VPS 下载

wget -O movie.mkv "完整直链"

优点:

  • 不经过家庭网络

  • VPS 带宽更稳定

  • 可脚本化批量处理

下载完成后用 SFTP 拉回本地。


11 用 Jellyfin 播放

把下载后的文件加入 Jellyfin 媒体库。

扫描目录即可播放。

这样做的好处是:

  • 播放更稳定

  • 不依赖临时直链

  • 不受 token 过期影响


12 常见问题总结

问题原因
转存异常忘写 ALIYUN_FOLDER_ID
下载 403直链过期
容器正常但无转存token 失效
访问不了防火墙未放行
速度慢本地网络瓶颈

结语

Xiaoya 不是播放器。

它是:

  • 云盘自动化中转系统

  • 资源转存器

  • 临时直链生成器


Comments