logo NodeSeekbeta

EMBY 搭建教程基于docker-compose,CMS + emby + 115+MOVIEPILOT v2+Qbittorrent

因为在其他的地方没有找到系统的适合小白的教程 所以分享下小白粘贴复制就能搭建的教程请完整看完再操作 第一次写望见谅
这里先感谢佬给予的帮助和后续的技术支持 @1-eason
如有错误请指正(再叠一次甲 可能有漏的地方请指出我来补充)


准备工作

  1. 一台杜甫或者可以长时间占用带宽的VPS
  2. 需要MOVIEPILOT v2支持的PT站 参考wiki 如果没有就无需往下看了
  3. PT站账号必备!!(我也是论坛求的)
  4. 115会员账号(不然会各种限速限制)
  5. CMS捐献码 捐赠地址

首先更新系统组件并安装

sudo -s
apt update -y 
apt install curl wget -y

安装1panel 更直观的管理和维护
一键安装即可 根据提示设定自己的账号密码和路径 访问地址 IP+端口+安全路径

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh


正式进入搭建流程
第一步 新建EMBY配置文件和目录

cd
mkdir -p /opt/embyserver/config
cd /opt/embyserver
nano docker-compose.yml

粘贴以下内容

services:
  embyserver:
    privileged: true
    image: amilys/embyserver:latest
    container_name: embyserver
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /opt/embyserver/config:/config
      - /opt/embyserver/library:/library
      - /opt/cloud-media-sync/media:/media
    ports:
      - "8096:8096"
    restart: unless-stopped
    networks:
      - 1panel-network

networks:
  1panel-network:
    external: true
    name: 1panel-network

按ctrl+o保存再按ctrl+x退出编辑
启动EMBY docke容器

docker compose up -d

第二步
创建QD文件夹和配置文件

cd
mkdir -p /opt/qbittorrent/config
mkdir -p /opt/qbittorrent/downloads
cd /opt/qbittorrent
nano docker-compose.yml

粘贴以下内容

services:
  qbittorrent:
    image: linuxserver/qbittorrent
    container_name: qbittorrent
    environment:
      - PUID=0
      - PGID=0
      - TZ=Asia/Shanghai
      - WEBUI_PORT=8081
    volumes:
      - /opt/qbittorrent/config:/config
      - /opt/qbittorrent/downloads:/downloads
    ports:
      - 6881:6881
      - 6881:6881/udp
      - 8081:8081
    restart: unless-stopped
    networks:
      - 1panel-network

networks:
  1panel-network:
    external: true
    name: 1panel-network

启动QB容器

docker compose up -d

第三步
创建MPv2文件和配置文件

mkdir -p  /opt/moviepilot-v2/media
cd /opt/moviepilot-v2
nano docker-compose.yaml

贴入下文

version: "3.8"

services:
  moviepilot:
    image: jxxghp/moviepilot-v2:latest
    container_name: moviepilot-v2
    hostname: moviepilot-v2
    stdin_open: true
    tty: true
    restart: always

    networks:
      - 1panel-network
    ports:
      - "3000:3000"
      - "3001:3001"
    volumes:
      - "/opt/moviepilot-v2/media:/media"  
      - "/opt/qbittorrent/downloads:/downloads"    
      - "/opt/embyserver/library:/library"    
      - "/opt/moviepilot-v2/config:/config"  
      - "/opt/moviepilot-v2/core:/moviepilot/.cache/ms-playwright" 
      - "/var/run/docker.sock:/var/run/docker.sock:ro" 
      - "/root/.config/rclone:/moviepilot/.config/rclone"

    environment:
      - NGINX_PORT=3000
      - PORT=3001
      - PUID=0              
      - PGID=0              
      - UMASK=000
      - TZ=Asia/Shanghai
      - 'SUPERUSER=这里填你的管理账号 重启这个容器后请立即去1panel容器管理查看moviepilot-v2的日志记下它生成的密码' 

networks:
  1panel-network:
    external: true
    name: 1panel-network

重启容器服务

重启容器服务
docker compose pull
docker compose up -d
docker logs moviepilot-v2

第四步
安裝CMS

mkdir -p /opt/cloud-media-sync/config
mkdir -p /opt/cloud-media-sync/logs
mkdir -p /opt/cloud-media-sync/cache
mkdir -p /opt/cloud-media-sync/media
cd /opt/cloud-media-sync
nano docker-compose.yml

粘贴下文

services:
  cloud-media-sync:
    privileged: true
    container_name: cloud-media-sync
    image: imaliang/cloud-media-sync:latest
    restart: always
    volumes:
      - "/opt/cloud-media-sync/config:/config"
      - "/opt/cloud-media-sync/logs:/logs"
      - "/opt/cloud-media-sync/cache:/var/cache/nginx/emby"
      - "/opt/cloud-media-sync/media:/media"
    ports:
      - "9527:9527"
      - "9096:9096"
    environment:
      - PUID=0
      - PGID=0
      - UMASK=022
      - TZ=Asia/Shanghai
      - RUN_ENV=online
      - ADMIN_USERNAME=这里填你要设置的管理账号
      - ADMIN_PASSWORD=同理这里填密码
      - EMBY_HOST_PORT=http://172.17.0.1:8096
      - EMBY_API_KEY=这里是需要进入EMBY新建API秘钥
      - DONATE_CODE=这里就是你的捐赠码了
      - IMAGE_CACHE_POLICY=2
      - CMS_API_TOKEN=tFqVIZEbsbP9pTQ
      - M115_COPY_PLAYER=enable
      - M115_COPY_PLAYER_CID=进入你的115云盘新建一个文件夹并命名TEMP ID是你进入TEMP文件夹后网页上那一串数字 类似这样3305807746598918261的数字 把这串数字填到=后面
      - M115_COPY_PLAYER_URL_CACHE_TIME=600 
    networks:
      - 1panel-network

networks:
  1panel-network:
    external: true
    name: 1panel-network

重启容器

docker compose up -d

image
到这里大致安装都已经结束现在需要细节的设置


打开1panel备用
ip+端口+安全入口

打开QB管理端
ip+8081
账号默认admin 密码进1panel 查看对应容器的日志
image
进入后点击设置进入连接把链接限制全部取消,监听端口点击随机复制后粘贴到QD容器的TCP+UDP端口中
image

回到1panel进行容器设置 按图对照操作即可
QB容器设置
image
再点击编辑
image
image
CMS容器设置
IPV4 不用和我一致用它默认分配的即可 其他容器同理
image
image
image
EMBY容器设置
image
MP容器设定
image
image
image


最后一步进行几个插件的后台设定
进入emby客户端网页 ip:8096
左侧点击-转码-启用硬件加速选-否(如果你的杜甫有显卡的话例外可以开)
左侧点击-新增媒体库-内容类型选混合内容-显示名称自己自定义
文件夹-添加-路径/media/EMBY
完成后下一步
媒体库设置只打开以下选项 其他保存关闭和空白就行
导入播放列表文件
启用实时监视
启用多部分项目
元数据读取器
在服务器的元数据文件夹中保留图像的缓存副本
预先下载图像

进入CMS后台 IP+端口9527
image
image
image
image

进入MPV2后台 IP+端口3000
点击右侧站点管理 右下角有个球 点他
如何获取RSS 一般的站点RSS都是这个图标
image
如何获取站点API
image
添加站点
image

点击设定-系统 往下翻有下载器 媒体服务器 我们一个一个来 设置好之后一定要记得点保存 里面保存一次 外面还有一个保存 2个保存按钮
image
下一个媒体服务器 点击加号
image
EMBY秘钥获取
image
进入存储 & 目录(抄作业)
image
image

{{title}}{% if year %} ({{year}}){% endif %}/{{title}}{% if year %} ({{year}}){% endif %}{% if part %}-{{part}}{% endif %}{% if videoFormat %} - {{videoFormat}}{% endif %}{{fileExt}}
{{title}}{% if year %} ({{year}}){% endif %}/Season {{season}}/{{title}} - {{season_episode}}{% if part %}-{{part}}{% endif %}{% if episode %} - 第 {{episode}} 集{% endif %}{{fileExt}}

image
OK完事
回到EMBY网页端后台 点击左侧用户新建管理员账户记得给权限喔 这里就不教了按提示操作就好了 记得设置密码
以上设置完毕 就可以使用第三方APP访问 http://IP:8096或者9096 加你设置的用户服务观看了(9096是设定的302端口不可多人在线看最多2人否则会被115警告喔)
注意现在绝大多数PC 移动客户端并不支持原盘解码和.iso解码所以你下载下来也是播放不了的(.iso用infuse可以正常解码播放)
还有一步Nginx反代可以用来域名申请什么的应该都会我就不写了

12345
  • 如果此版教程对你有用请留下点击评论感谢
    有伙伴反馈在EMBY添加媒体库的时候没有命名为EMBY的文件夹,所以补充一下再执行这一步的时候如果没有EMBY的文件夹是因为你没有文件进行刮削所以CMS不会自动生成这个文件夹 你可以自己去这个路径/opt/cloud-media-sync/media新建一个EMBY文件夹给755权限

    还有就是请先在115的根目录新建2个目录 一个命名EMBY一个命名为TEMP 这2个文件夹都是需要获取CID有用的

    再更新一个docker代理访问的方法 解决MPV2在挂载115获取API授权的时候触发了CF的人机盾时可以在MP的yaml配置加入代理访问 先要一个干净的IP生成http协议

    version: "3.8"
    
    services:
      moviepilot:
        image: jxxghp/moviepilot-v2:latest
        container_name: moviepilot-v2
        hostname: moviepilot-v2
        stdin_open: true
        tty: true
        restart: always
    
        networks:
          - 1panel-network
        ports:
          - "3000:3000"
          - "3001:3001"
        volumes:
          - "/opt/moviepilot-v2/media:/media"  
          - "/opt/qbittorrent/downloads:/downloads"    
          - "/opt/embyserver/library:/library"    
          - "/opt/moviepilot-v2/config:/config"  
          - "/opt/moviepilot-v2/core:/moviepilot/.cache/ms-playwright" 
          - "/var/run/docker.sock:/var/run/docker.sock:ro" 
          - "/root/.config/rclone:/moviepilot/.config/rclone"
    
        environment:
          - NGINX_PORT=3000
          - PORT=3001
          - PUID=0              
          - PGID=0              
          - UMASK=000
          - TZ=Asia/Shanghai
          - 'SUPERUSER=这里填你的管理账号' 
          - 'SUPERUSER_PASSWORD=管理密码'
          - HTTP_PROXY=http://账号:密码@IP:端口
          - HTTPS_PROXY=http://账号:密码@IP:端口
          - http_proxy=http://账号:密码@IP:端口
          - https_proxy=http://账号:密码@IP:端口
          - NO_PROXY=localhost,127.0.0.1,::1,moviepilot-v2,1panel-network
          - no_proxy=localhost,127.0.0.1,::1,moviepilot-v2,1panel-network
    
    networks:
      1panel-network:
        external: true
        name: 1panel-network
    
  • @CalvinLee #40 比如你下一部电影要50个G或者一部剧要200G 你盘不够大怎么下到本地刮削?不塞满就炸么

  • 大佬太强了

  • 先点赞后欣赏

  • 用mp插件不是就可以302了吗?为什么还要加个cms,有特殊功能吗 xhj007

  • @forgiven #3 更强大 适合多用户可以直接开服了哈哈哈

  • 很好 nc美东可以完全用起来了

  • 感谢喂饭

  • 求的PT是不是还需要做新手任务。
    用VPS刷的,还是用NAS刷的。

  • @mexun #7 vps 大部分站不行但是可以捐 家宽nas无限制

  • @云雾间 #8
    请问一下你用的哪家PT?是捐的吗?

  • 好教程

12345

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有72267位seeker

🎉欢迎新用户🎉