为什么要用lxc安装而不是群晖自己安装

既然都用pve了,一个服务干一个事,我爱这么干。

注意,不要想着直接用官方社区源安装jellyfin

官源下不动,真的下不动,科技也下不动,还是docker一把梭吧

从nas迁移

如果之前在nas安装了jellyfin,直接把对应的config和cache文件夹拷贝到新容器(scp),然后映射copy的内容到新的docker容器内即可,迁移之后一模一样,非常轻松。顶多就是改一下媒体库路径。

挂载群晖的媒体资源

群晖开启NFS

控制面板-文件服务-NFS-启用NFS服务,最大协议4.1,应用。 控制面板-共享文件夹-编辑你要共享的文件夹-NFS权限-新增-ip填lxc的ip,勾选全勾。保存。记下路径,如/volumn2/10t

  • 在群晖-控制面板-共享文件夹-选中要共享的文件夹,编辑NFS权限,添加要挂载nfs的主机ip。
  • 或者进ssh编辑vim /etc/exports,将整个网段都加入共享权限: /volume2/10t 192.168.100.0/24(rw,async,no_wdelay,crossmnt,insecure,no_root_squash,insecure_locks,sec=sys,anonuid=1025,anongid=100),然后执行exports -a使服务端配置生效。

lxc挂载群晖的NFS文件夹

假设192.168.100.5是群晖的ip,/mnt/media是你自定义的一个用来挂载nfs目录的本地文件夹。

  • 安装包: apt install nfs-common

  • 创建目录: mkdir /mnt/media

  • 临时挂载(入股哟需要) lxc命令行执行mount 192.168.100.5:/volume2/10t /mnt/media

  • 加入开机自动挂载: 编辑/etc/fstab,写入192.168.100.5:/volume2/10t /mnt/media nfs defaults 0 0 参考0参考1

  • 【重要】设置docker-compose等待nfs挂载后再启动(docker 在nfs挂载之后再启动参考

    1. 执行sudo -i进入管理员角色
    2. 执行systemctl list-units | grep mount寻找与fstab中配置对应的信息,一般是叫mnt-xxxx.mount之类的,记住此名字
    3. 找到docker启动任务并备份:cp /lib/systemd/system/docker.service /lib/systemd/system/docker.service.bak
    4. 编辑docker启动任务,将第二步中找到的挂载任务设置为他的After项目以及Wants项目(注意是要改2个地方,与前值空格隔开)。vim /lib/systemd/system/docker.service

docker 启动jellyfin

docker-compose.yml

version: '3.5'
services:
  jellyfin:
    image: nyanmisaka/jellyfin
    container_name: jellyfin
    network_mode: 'host'
    volumes:
      - /root/jellyfin/config:/config
      - /root/jellyfin/cache:/cache
      - /mnt/media:/media
    restart: 'unless-stopped'
    # ports:
	#   - 8096:8096
    devices:
      - /dev/dri:/dev/dri
    environment:
      - TZ=Asia/Shanghai
      - PUID=0
      - PGID=0
      - LC_ALL=en_US.UTF-8
      - LANG=en_US.UTF-8
      - LANGUAGE=en_US:en
      - HEALTHCHECK_URL=http://localhost:8096/
    # extra_hosts:
    #   - "api.themoviedb.org:13.224.161.90"
    #   - "api.themoviedb.org:13.35.8.65"
    #   - "api.themoviedb.org:13.35.8.93"
    #   - "api.themoviedb.org:13.35.8.6"
    #   - "api.themoviedb.org:13.35.8.54"
    #   - "image.tmdb.org:138.199.37.230"
    #   - "image.tmdb.org:108.138.246.49"
    #   - "api.thetvdb.org:13.225.89.239"

jellyfin开启硬件转码

教程挺多的,不再赘述。这个教程里有低电压模式的 Intel H.264 硬件编码器相关的说明,我没开启,可以参考