Logo

通用 VPS 搭建 Emby 观影系统快速指南

Published on
...
Authors

🧠 概述

本教程教你如何在一台 VPS 上搭建完整的媒体观影系统,基于 Docker 环境,实现:

  • CloudDrive2:挂载百度网盘、阿里云盘等云盘资源

  • Emby:媒体服务器,管理并在线播放影片

  • MetaTube:Emby 的高级刮削插件,自动补全影片元数据、封面与演员信息

该方案的优势是:

  • 🧩 直接播放云盘资源,无需下载到本地

  • 💾 节省 VPS 存储空间

  • 🎬 自动生成完整的媒体信息与封面


🧱 环境准备

系统要求

  • VPS 系统:Ubuntu 22.04 LTS 或更高

  • 硬件配置:2 核 + 2GB RAM 起步

  • 网络:建议使用境外 VPS 或具备代理出站能力

安装 Docker 与 Compose

sudo apt update && sudo apt upgrade -y
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo usermod -aG docker $USER

重启终端生效。


🧩 系统架构

组件作用
CloudDrive2将网盘(百度、阿里等)挂载到 VPS
Emby媒体服务器,播放及分类管理
MetaTube提供丰富的 AV/影视元数据刮削

系统架构路径:

CloudDrive2/opt/clouddrive        # 网盘挂载目录
Emby/opt/clouddrive_links  # 影片软链接目录
MetaTubeEmby 插件元数据来源

☁️ CloudDrive2 云盘挂载

docker-compose 配置

在你的项目目录创建文件:

mkdir -p ~/docker_app
cd ~/docker_app
nano compose_emby.yml

添加以下内容:

services:
  clouddrive2:
    image: cloudnas/clouddrive2:latest
    container_name: clouddrive2
    restart: unless-stopped
    privileged: true
    devices:
      - /dev/fuse:/dev/fuse
    volumes:
      - clouddrive2_config:/Config
      - /opt/clouddrive:/source:shared
    environment:
      - TZ=Asia/Shanghai
    ports:
      - "19798:19798"

volumes:
  clouddrive2_config:

启动:

docker-compose -f compose_emby.yml up -d clouddrive2

访问:

http://你的IP:19798

默认账号密码:admin / admin(首次登录后修改)。


🎬 Emby 媒体服务器

在同一个 compose_emby.yml 中添加:

  emby:
    image: emby/embyserver:latest
    container_name: emby
    restart: unless-stopped
    privileged: true
    environment:
      - UID=1000
      - GID=1000
      - TZ=Asia/Shanghai
      - LANG=zh_CN.UTF-8
      - LC_ALL=zh_CN.UTF-8
    volumes:
      - emby_config:/config
      - /opt/clouddrive:/media:rshared,slave
      - /opt/clouddrive_links:/medialibrary:rshared
      - /tmp:/transcode
    ports:
      - "8096:8096"
      - "8920:8920"

volumes:
  emby_config:

启动:

docker-compose -f compose_emby.yml up -d emby

访问 Emby:

http://你的IP:8096

设置中文界面后,添加媒体库:

  • 类型:电影 / 电视节目

  • 路径:/medialibrary


🧠 MetaTube 插件部署与配置

1️⃣ 运行 MetaTube Server

创建 metatube-compose.yml:

cd ~/docker_app
nano metatube-compose.yml

写入:

services:
  metatube-server:
    image: ghcr.io/metatube-community/metatube-server:latest
    container_name: metatube
    restart: unless-stopped
    ports:
      - "8080:8080"
    volumes:
      - /home/huashan/metatube/config:/config
      - /home/huashan/metatube/cache:/cache
    environment:
      - TZ=Asia/Shanghai
      - MT_LOG_LEVEL=debug
      - HTTP_PROXY=http://127.0.0.1:7890    # 如无代理可删除
      - HTTPS_PROXY=http://127.0.0.1:7890
      - NO_PROXY=127.0.0.1,localhost,192.168.0.0/16
    networks:
      - app_network

networks:
  app_network:
    external: true

运行:

docker-compose -f metatube-compose.yml up -d

验证:

curl http://你的IP:8080/

返回:

{"data":{"app":"metatube","version":"v1.7.x"}}

表示启动成功 ✅


2️⃣ 确认配置文件

创建 /home/huashan/metatube/config/config.json:

cat >/home/huashan/metatube/config/config.json <<'JSON'
**
  "providers": ["javdb", "bgn", "fc2hub", "javlibrary", "avmoo"],
  "server": **
    "port": 8080,
    "enable_logging": true
  **
**
JSON

docker restart metatube

验证加载:

docker logs -f metatube | grep -Ei "bgn|fc2hub|Loaded"

3️⃣ Emby 插件安装

  1. 下载插件包:

    MetaTube GitHub ReleasesAttachment.tiff

  2. 打开 Emby 管理后台 → 插件 → "安装插件" → 上传 ZIP 文件。

  3. 安装完成后重启 Emby。


4️⃣ Emby 插件配置

进入 Emby 插件 → MetaTube 设置

  • 服务器 URLhttp://你的IP:8080

  • 令牌:留空或自定义(与 server 保持一致)

  • Movie provider filter:javdb,fc2hub,bgn,javlibrary,avmoo

保存后,重新扫描媒体库。


5️⃣ 测试接口

在宿主机测试是否能正确返回数据:

curl "http://你的IP:8080/v1/movies/search?q=FC2-PPV-1317995&provider=fc2hub&fallback=true"

若返回 200 且包含封面或标题,即可正常工作。


🔧 系统维护与更新

更新所有组件:

cd ~/docker_app
docker-compose -f compose_emby.yml pull
docker-compose -f compose_emby.yml up -d
docker-compose -f metatube-compose.yml pull
docker-compose -f metatube-compose.yml up -d

查看日志:

docker logs clouddrive2
docker logs emby
docker logs metatube

⚙️ 高级优化

代理支持

MetaTube 网络需能访问 javdb.com / bgn.dev / fc2hub.com。

如需代理访问,确认 docker run 或 compose 中包含:

environment:
  - HTTP_PROXY=http://127.0.0.1:7890
  - HTTPS_PROXY=http://127.0.0.1:7890

DNS 优化

如果容器内 DNS 解析失败,可在 compose 中添加:

dns:
  - 223.5.5.5
  - 119.29.29.29

🧰 常见问题排查

问题解决方案
dial tcp: lookup ... server misbehavingDocker DNS 不可用,改为阿里/腾讯 DNS
搜不到 FC2/BGN检查 config.json 中 provider 是否写入;如需代理加环境变量
/api/version 返回 404不用担心,MetaTube 新版使用 / 或 /v1/... 路径
Emby 没显示 MetaTube插件没启用或服务地址错误,确认端口 8080 可访问

🎉 总结

通过本教程,你已经在 VPS 上成功部署:

  • ✅ CloudDrive2 云盘挂载

  • ✅ Emby 媒体服务器

  • ✅ MetaTube 智能刮削

现在你可以在 Emby 中直接浏览云盘中的影片,并获得完整的海报、演员、简介和系列信息。

通用 VPS 搭建 Emby 观影系统快速指南 | 原子比特之间