基本架构

准备工作

  1. 一台云主机(Debian)

  2. ssh工具, 推荐(Final Shell)

  3. 115网盘(会员)

开放端口

现在云服务面板开通 5244 8095 8096(可选) 19798 端口

安装Emby

docker run -d \
   --name=emby \
   -e PUID=0 \
   -e PGID=0 \
   -e TZ=Etc/UTC \
   -p 8096:8096 \
   -v /docker/emby:/config \
   -v /media:/media115 \
   --restart unless-stopped \
   lscr.io/linuxserver/emby:latest

media115为115挂载路径

安装Clouddrive2

自动安装

安装命令

脚本优先以Docker形式安装,其次以安装包形式安装

# 国内加速(推荐)
curl -fsSL "https://mirror.ghproxy.com/https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s install mirror
# 代理
curl -fsSL "https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s install

卸载命令

# 国内加速(推荐)
curl -fsSL "https://mirror.ghproxy.com/https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s uninstall mirror
# 代理
curl -fsSL "https://raw.githubusercontent.com/sublaim/clouddrive2/main/cd2.sh" | bash -s uninstall

手动安装

安装前检查一下 是否安装了fuse find /dev/fuse 显示/dev/fuse就是已安装,如果没有的话apt install fuse3

最后执行下面的

docker run -d \
    --name clouddrive \
    --restart unless-stopped \
    --env CLOUDDRIVE_HOME=/Config \
    -v /media:/CloudNAS:shared \
    -v /docker/cd2:/Config \
    --network host \
    --pid host \
    --privileged \
    --device /dev/fuse:/dev/fuse \
    cloudnas/clouddrive2

安装alist 和Nginx

Emby2Alist下载链接

  1. 解压emby2Alist

  2. cd emby2Alist

  3. 按照下图修改constant.js

完成上方配置后输入docker-compose up -d (这一步等获取到Alist令牌后在做)

配置alist

  1. 登录Alist-管理

  2. 存储-添加-115, token Cookie 根文件夹ID,的配置移步alist文档

  3. 设置-其他-令牌复制到上上面的constant.js

登录cd2

1.进入端口19798,

2.新增115网盘

3.扫描提示二维码

4.挂载到/CloudNAS

测试

在各个软件测试时候(Infuse, FileBall)等等,此时Emby直链端口是8095,查看nginx日志,是否转链成功。然后云服务器是否跑了流量,如果没有 就是直链成功了

已知存在问题

1.115的302需要alist最新版v3.30.0,由于115直链并没有响应允许跨域标识,所以只能用客户端播放,测试emby所有官方客户端和mx player(安卓),PotPlayer(Windows),Fileball(iOS),Infuse(Mac)支持跨域,不支持跨域的播放为Web浏览器.

2.如何解决上方问题

Web浏览器被跨域拦截请使用拓展解决

浏览器插件地址

[
    {
        "respHeaders": [
            {
                "enabled": true,
                "name": "Access-Control-Allow-Origin",
                "value": "*"
            }
        ],
        "shortTitle": "1",
        "title": "CORS Support",
        "urlFilters": [
            {
                "enabled": true,
                "urlRegex": "*.115.com"
            }
        ],
        "version": 2
    }
]