Filebrowser + Jellyfin 搭建自己的媒体库

利用 Jellyfin 可以搭建自己的个人媒体库,能将自己的资源如同视频网站一样呈现,用户可以通过网站浏览的形式访问自己存在服务器中的资源,仿佛一个独享的奈飞。同类的产品还有Plex、Emby,但因为 Jellyfin免费开源,更符合我的偏好。

Jellyfin Github地址

https://github.com/jellyfin/jellyfin

有了影音资源的媒体库,还需要一个文件管理工具。这里选用了Filebrowser,它能够在网页上直接管理服务器里的文件,完全可以作为一个轻量的云盘使用。并且同样是免费开源,且安装简单,功能够用。

Filebrowser Github地址

https://github.com/filebrowser/filebrowser

教程

先解析两个二级域名a.yourweb.com 和 b.youweb.com到你的服务器。

安装Jellyfin

  • 这里采用docker来进行安装,其他的安装方法参考官方文档
docker run -d \
 --name jellyfin \
 --net=host \
 --volume /root/data/jellyfin/config:/config \
 --volume /root/data/jellyfin/cache:/cache \
 --mount type=bind,source=/root/data/jellyfin/media,target=/media \
 --restart=unless-stopped \
 jellyfin/jellyfin
  • 其中
    /root/data/jellyfin/config
    /root/data/jellyfin/cache
    /root/data/jellyfin/media
    三个文件夹需要提前创建好,也可以按照自己的需求修改到其他位置。其中/root/data/jellyfin/media 下我会存放媒体资源,该路径后面安装Filebrowser会用到。
  • 容器创建好后,需要在宝塔防火墙处放行默认的8096端口。
  • 然后创建一个以域名 a.yourweb.com的网站,并在宝塔网站设置的Config下设置反向代理
    将52–64行注释掉并在后面添加:
  location / {
  proxy_pass http://127.0.0.1:8096/;
  rewrite ^/(.*)$ /$1 break;
  proxy_redirect off;
  proxy_set_header Host $host;
  proxy_set_header X-Forwarded-Proto $scheme;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header Upgrade-Insecure-Requests 1;
  proxy_set_header X-Forwarded-Proto https;
  }
  • 现在即可通过 a.yourweb.com访问你的Jellyfin媒体库

安装Filebrowser

  • 先创建一个文件夹用来存放Filebrowser的db文件
mkdir -p data/filebrowser
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash
  • 此时输入 filebrowser -r /path/to/your/files 就可以运行程序,并管理 /path/to/your/files 路径下的文件,但是为了能够让其在后台持续运行,我们先在宝塔安装守护进程。
  • 先在aapanel中安装supervisor插件
    进入该插件的设置,
    点击 Add Daemon
    Run Dir 填入 /root/data/filebrowser
    Start Command 填入filebrowser -r /root/data/jellyfin/media
    Name 按需填写,其余不变,然后确认
  • 其中Run Dir中的路径下会自动生成一个db文件,而-r /root/data/jellyfin/media中的路径为Filebrowser能够管理的文件夹,你也可以按需修改。
  • 同上面一样,以域名 b.yourweb.com的网站创建网站,并反向代理默认的8080端口
  location / {
  proxy_pass http://127.0.0.1:8080/;
  rewrite ^/(.*)$ /$1 break;
  proxy_redirect off;
  proxy_set_header Host $host;
  proxy_set_header X-Forwarded-Proto $scheme;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header Upgrade-Insecure-Requests 1;
  proxy_set_header X-Forwarded-Proto https;
  }
  • 此时,已经可以通过 b.yourweb.com 访问FIlebrowser进行文件管理,
    默认用户名为 admin
    密码为admin