超详细,多图,简单 Jellyfin on LXC, Docke, NAS挂载  (个人记录)

2023-03-18 13:55:43 17点赞 190收藏 43评论

前言:

- 写这个的目的是因为本人健忘所以做个记录以便日后再折腾时查阅,。

- 本人笔拙如有选词,错字,语法,标点错误请忽视,大概率知道了也不会修改,本人能看懂就好。

- 内容仅适用于本人的使用环境,不同环境请忽视或仅作参考。

- 文中出现的内容来自网络和本人浅薄的认知,如果万一有侵犯他人内容请告知。

- 纯自己瞎记录, 虽然没啥可能性如果万一以千万分之一的概率得到赏识被转载的话还请注明作者和出处


环境:

- 华擎J3455

-  Proxmox VE(PVE) 7.3


内容:

LXC 容器

1. Local -> CT 模板 ->模板 搜索 Ubuntu 下载模板1. Local -> CT 模板 ->模板 搜索 Ubuntu 下载模板

2. 下载完模板,如上图2. 下载完模板,如上图

3. 点击创建CT3. 点击创建CT

4, 参考上图设置, CT ID,主机名,密码, 注意!!!!! 勾掉“无特权容器”4, 参考上图设置, CT ID,主机名,密码, 注意!!!!! 勾掉“无特权容器”

5. 选择已经下载好的模板(这里是ubuntu),下一步5. 选择已经下载好的模板(这里是ubuntu),下一步

6. 按需设置磁盘大小,下一步6. 按需设置磁盘大小,下一步

7. 按需设置核心, 下一步7. 按需设置核心, 下一步

8. 按需设置内存, 下一步8. 按需设置内存, 下一步

9. 按需设置 IP, 下一步9. 按需设置 IP, 下一步

10. 按需设置DNS , 如果PVE已经设置好上网的话可以直接下一步10. 按需设置DNS , 如果PVE已经设置好上网的话可以直接下一步

11. 先不启动, 点击完成11. 先不启动, 点击完成

12. 显示TASK OK 说明创建成功, 关闭窗口12. 显示TASK OK 说明创建成功, 关闭窗口

13. 点击容器->选项->功能->编辑->选择勾上 嵌套, NFS, SMB/CIFS后点OK13. 点击容器->选项->功能->编辑->选择勾上 嵌套, NFS, SMB/CIFS后点OK

14, 设置开机启动后点击启动14, 设置开机启动后点击启动

15, 启动后显示这个画面说明成功15, 启动后显示这个画面说明成功

16, 启动成功后更新一下, 以下命令复制粘贴回车(注意! 是容器的控制台)16, 启动成功后更新一下, 以下命令复制粘贴回车(注意! 是容器的控制台)

apt update&&apt upgrade

17. 转到PVE的 Shell 输入 以下命令复制粘贴回车 确认显示conf文件, 这一步可以跳过, 只是为了确认路径是否正确(注意! 是PVE的shell)17. 转到PVE的 Shell 输入 以下命令复制粘贴回车 确认显示conf文件, 这一步可以跳过, 只是为了确认路径是否正确(注意! 是PVE的shell)

cd /etc/pve/lxc

18. 还是PVE的 Shell 输入 以下命令复制粘贴回车 编辑conf文件(注意! 是PVE的shell)18. 还是PVE的 Shell 输入 以下命令复制粘贴回车 编辑conf文件(注意! 是PVE的shell)

nano /etc/pve/lxc/999.conf

19. 在打开的conf文件中添加以下三行,如图保存退出 (注意! 是PVE的shell)19. 在打开的conf文件中添加以下三行,如图保存退出 (注意! 是PVE的shell)

lxc.apparmor.profile: unconfined

lxc.cgroup.devices.allow: a

lxc.cap.drop:

容器中安装Docker

20, 在容器中安装Docker, 如图 先更新以下, 然后复制粘贴第二段命令复制粘贴回车(注意! 是容器的控制台)20, 在容器中安装Docker, 如图 先更新以下, 然后复制粘贴第二段命令复制粘贴回车(注意! 是容器的控制台)

sudo apt-get update


sudo apt-get install ca-certificates

sudo apt-get install curl

sudo apt-get install gnupg

sudo apt-get install lsb-release

21, 添加Docker 官方密钥,第二段命令复制粘贴回车(注意! 是容器的控制台), [这里有个空格]这段字包括[]删掉,不知道为什么有空格无法保存文章21, 添加Docker 官方密钥,第二段命令复制粘贴回车(注意! 是容器的控制台), [这里有个空格]这段字包括[]删掉,不知道为什么有空格无法保存文章

curl[这里有个空格]-fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

22. 稳定存储库 , 这命令里面有两处 [反斜杠] 这个改成上图一样, 一共两处, 色魔张大妈文章里奇葩不能写反斜杠22. 稳定存储库 , 这命令里面有两处 [反斜杠] 这个改成上图一样, 一共两处, 色魔张大妈文章里奇葩不能写反斜杠

echo [反斜杠]

  "deb[arch=$(dpkg --print-architecture)signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu [ 反斜杠]

  $(lsb_release-cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null


23, 更新后安装Docker, 出现Y/N 选择Y进行安装23, 更新后安装Docker, 出现Y/N 选择Y进行安装

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io


容器挂载显卡

24, 在PVE的shell中更新24, 在PVE的shell中更新

apt update

25, 在PVE的Shell中输入以下命令确认核显 (注意是PVE的 Shell), 挂载显卡关键信息, Card0 对应 226,0 ; renderD128对应 226,12825, 在PVE的Shell中输入以下命令确认核显 (注意是PVE的 Shell), 挂载显卡关键信息, Card0 对应 226,0 ; renderD128对应 226,128

ls -l /dev/dri

       # 输入后显示如下(参考上图)

        root@PVE:~# ls -l /dev/dri

        total 0

        drwxr-xr-x 2 root root         80 Jan 17 23:00 by-path

        crw-rw---- 1 root video 226,      0 Jan 17 23:00 card0

        crw-rw---- 1 root render 226, 128 Jan 17 23:00 renderD128

26, 用nano编辑器编辑LXC配置文件, 注意! 我的是999.conf , 根据实际情况编辑(注意是PVE的 Shell)26, 用nano编辑器编辑LXC配置文件, 注意! 我的是999.conf , 根据实际情况编辑(注意是PVE的 Shell)

nano /etc/pve/lxc/999.conf

27, 把以下几行粘贴保存并退出 ,注意最后一行的 999 容器ID(注意目前在PVE的 Shell中操作)27, 把以下几行粘贴保存并退出 ,注意最后一行的 999 容器ID(注意目前在PVE的 Shell中操作)

lxc.cgroup2.devices.allow: c 226:0 rwm
lxc.cgroup2.devices.allow: c 226:128 rwm     
lxc.autodev: 1
lxc.hook.autodev: /var/lib/lxc/999/mount_hook.sh

28, 使用nano 编辑器创建 mount_hook, 注意容器ID, 回车创建空白文件(注意目前在PVE的 Shell中操作)28, 使用nano 编辑器创建 mount_hook, 注意容器ID, 回车创建空白文件(注意目前在PVE的 Shell中操作)

nano /var/lib/lxc/999/mount_hook.sh

29, 在空白文件中粘贴以下几行保存退出 (注意目前在PVE的 Shell中操作)29, 在空白文件中粘贴以下几行保存退出 (注意目前在PVE的 Shell中操作)

mkdir -p ${LXC_ROOTFS_MOUNT}/dev/dri
mknod -m 666 ${LXC_ROOTFS_MOUNT}/dev/dri/card0 c 226 0
mknod -m 666 ${LXC_ROOTFS_MOUNT}/dev/dri/renderD128 c 226 128

30, 给刚创建的mount_hook.sh文件设置权限30, 给刚创建的mount_hook.sh文件设置权限

chmod 755 /var/lib/lxc/999/mount_hook.sh  

31, 转到容器控制台中输入输入reboot重启后, 再输入 ls -l /dev/dri 如果显示 card0, renderD128两项说明容器成功挂载card0, renderD128两个设备, 如图31, 转到容器控制台中输入输入reboot重启后, 再输入 ls -l /dev/dri 如果显示 card0, renderD128两项说明容器成功挂载card0, renderD128两个设备, 如图

 ls -l /dev/dri 

32, 在容器控制台中输入以下命令安装vainfo32, 在容器控制台中输入以下命令安装vainfo

apt install vainfo

33, 输入vainfo 检查容器解码是否正常, 跟PVE宿主执行vainfo结果相似说明成功33, 输入vainfo 检查容器解码是否正常, 跟PVE宿主执行vainfo结果相似说明成功

到以上我做了一次快照



安装Potainer

 

34, LXC 控制台中输入以下命令安装Potainer34, LXC 控制台中输入以下命令安装Potainer

docker run -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /portainer/data:/data -d portainer/portainer

35, 第一步 浏览器里输入 http://IP:9000进入 Potainer 界面。 第二步 设置密码进入Potainer35, 第一步 浏览器里输入 http://IP:9000进入 Potainer 界面。 第二步 设置密码进入Potainer

36, 点这里36, 点这里

37,  点这里37,  点这里

38, 点左侧Volume38, 点左侧Volume

39,点击Add volume39,点击Add volume


       以下是挂载NAS(群晖)盘

40, 参考上图按需填写,1. Name  随便起个名字 2. 选择 启用 CIFS volume(按需也可以使用NFS)3. Address 输入NAS IP地址  4. Share 输入对应目录 5. 输入nas 用户名和密码   6. 创建volume40, 参考上图按需填写,1. Name  随便起个名字 2. 选择 启用 CIFS volume(按需也可以使用NFS)3. Address 输入NAS IP地址  4. Share 输入对应目录 5. 输入nas 用户名和密码   6. 创建volume

41, 创建后这个样子 新的volume 目前是unused状态41, 创建后这个样子 新的volume 目前是unused状态

42, 在容器的控制台中输入reboot 重启容器42, 在容器的控制台中输入reboot 重启容器

到以上我做了一次快照


Docker 里安装 Jellyfin 

为什么不是emby或者plex? 就因为Jellyfin是免费所以... 

43, 在容器的控制台里复制粘贴以下命令安装Jellyfin, 安装速度根据网络环境有差异43, 在容器的控制台里复制粘贴以下命令安装Jellyfin, 安装速度根据网络环境有差异

docker run -d -e TZ=Asia/Shanghai --name=jellyfin --net=host -v /media/jellyfin/config:/config -v /media/jellyfin/cache:/cache --device /dev/dri/renderD128:/dev/dri/renderD128  --device /dev/dri/card0:/dev/dri/card0 --restart always jellyfin/jellyfin:unstable


44, 安装完后http://IP:8096 进入jellyfin界面,根据提示配置jellyfin, 初始配置这里就跳过了,按照提示设置即可, 【【【媒体库可以先不添加直接下一步,设置完后再添加】】】44, 安装完后http://IP:8096 进入jellyfin界面,根据提示配置jellyfin, 初始配置这里就跳过了,按照提示设置即可, 【【【媒体库可以先不添加直接下一步,设置完后再添加】】】

45, 点击菜单45, 点击菜单

4646

47, 点击播放47, 点击播放

48, 硬件加速设置 VAAPI , VA-API设置为/dev/dri/renderD28, 硬件解码按需设置, 剩下的按需设置我没动,最后拉到最下面保存。 48, 硬件加速设置 VAAPI , VA-API设置为/dev/dri/renderD28, 硬件解码按需设置, 剩下的按需设置我没动,最后拉到最下面保存。 


以上Jellyfin 安装完,下面挂载NAS盘

49,进入potainer 点击左侧containers49,进入potainer 点击左侧containers

50,Container list 显示上面安装的 Jellyfin, 点击Jellyfin进入50,Container list 显示上面安装的 Jellyfin, 点击Jellyfin进入

51,点击Duplicate/Edit 51,点击Duplicate/Edit 

52,拉到最下面 点击Volumes -> 点击 +map additional volume -> 按需填写container项目 ,Volume项目下拉选择上面常见的volume,如图52,拉到最下面 点击Volumes -> 点击 +map additional volume -> 按需填写container项目 ,Volume项目下拉选择上面常见的volume,如图

53, 点击Deply the container 应用, 等待重启53, 点击Deply the container 应用, 等待重启

54, 到jellyfin界面 控制台, 媒体库,添加媒体库54, 到jellyfin界面 控制台, 媒体库,添加媒体库

55, 添加媒体库:选择内容类型 -> 按需填写显示名称 -> 点击文件夹 55, 添加媒体库:选择内容类型 -> 按需填写显示名称 -> 点击文件夹 

56, 选择上面挂载的NAS盘 (如果ANS里挂载了阿里云盘也相同操作), 点击确认完成, 后面会自动扫描影片56, 选择上面挂载的NAS盘 (如果ANS里挂载了阿里云盘也相同操作), 点击确认完成, 后面会自动扫描影片

57, 扫描片源后如上图显示, 想播放点击(jellyfin也有TV直播,可以添加M3U8播放源来看直播,如CCTV)57, 扫描片源后如上图显示, 想播放点击(jellyfin也有TV直播,可以添加M3U8播放源来看直播,如CCTV)


到以上我做了一次快照



更新显卡驱动(按需)

LXC 控制台中复制粘贴以下命令回车(这里就不截图了), 装完后 LXC控制台中输入reboot 重启LXC

apt install intel-media-va-driver-non-free

ubuntu查看intel GPU使用情况

58, 输入以下命令安装 intel-gpu-tools, 用于查看实时gpu使用情况, 可不安装58, 输入以下命令安装 intel-gpu-tools, 用于查看实时gpu使用情况, 可不安装



sudo apt-get install intel-gpu-tools

59, 输入sudo intel_gpu_top 查看GPU实时使用情况59, 输入sudo intel_gpu_top 查看GPU实时使用情况

sudo intel_gpu_top 

60, 确认一下使用率, 视频信息啥的看上图, 机器性能不够 播放4K还是很吃力。60, 确认一下使用率, 视频信息啥的看上图, 机器性能不够 播放4K还是很吃力。


弄完了,不知道用在何处,就这样吧

最后再做一次快照, 以后出问题直接恢复



总结

电脑端使用浏览器,盒子安装jellyfin 客户端,手机可浏览器可 app 使用。

# 先安装jellyfin后再安装 potainer后无法挂载volume ,不知道是不是操作有问题, 但是先安装potainer后再安装jellyfin就能正常挂volume。

以上所有安装设置写完记录后,重新试过一次应该没问题。


这篇记录的很艰难! 

#PVE (Proxmox)

#LXC

#Docker

#Jellyfin

#挂载NAS

#容器显卡

   

展开 收起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1849元起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2499元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1749元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3479.01元起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2599元起

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

1999元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3199元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

2499元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1349元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1299元起

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

1699元起

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

4299元起
43评论

  • 精彩
  • 最新
  • 就是说 lxc里不用宿主机直通一块硬盘过去呗?我之前想单独设置一块硬盘给lxc-docker用来着。看起来挂接nas共享空间更方便管理呐

    校验提示文案

    提交
    是的

    校验提示文案

    提交
    值友抽点时间写一写qbittorrent之类在lxc下部署以nas共享为存取的文章呗?我部署完下载会显示错误,可能是读取权限问题?

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 太麻烦了感觉,还是8100黑群晖省心

    校验提示文案

    提交
    我也这么想 [狂汗]

    校验提示文案

    提交
    8100黑群晖 有小白 保姆教程么 [高兴]

    校验提示文案

    提交
    收起所有回复
  • 好复杂。我n5100装的win10,虚拟机了个路由系统,win10下装个jellyfin服务器端。简单很多

    校验提示文案

    提交
    各有所需吧

    校验提示文案

    提交
    收起所有回复
  • 谢谢大佬。我的LXC容器20G空间现在已经用了96%了,请问是需要清理一下还是扩容?

    校验提示文案

    提交
    兄弟你存电影了啊?20g都用完了。。。 [狂汗] ,虽然没试过调整容器的磁盘大小,但是应该和虚拟机一样。刚看了一下,应该是在,资源-volume action-resize 调整磁盘大小。 试试,不行重来 [龇牙]

    校验提示文案

    提交
    谢谢大佬,不知道什么原因(可能是重启了容器),占用又回到4g多。我转到unraid了,可能是我主板有bug,第二条m.2和显卡如果同时插,pve启动后网卡启动不了,unraid这里正常。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 值友您好,非常感谢您的分享,但是我在按照您教程安装lxc时未见快照功能,提示当前的来宾配置不支持拍摄新快照,请问您是如何设置的?

    校验提示文案

    提交
    教程不敢当,记录一下而已, 我刚重新测试了一下快照没问题,提示来宾配置 是不是设置有误呢?

    校验提示文案

    提交
    我lxc生成的虚拟磁盘格式是raw格式,不支持快照,目前使用备份功能;
    另外您是否使用lxc下docker安装qbittorrent来挂载nas共享盘来下载呢?我安装后显示种子错误无法下载,会不会是读取权限问题?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 请问 容器内的jellyfin 无法themoviedb 刮削,如果直接用群晖里面的可以 [皱眉] 是个啥问题

    校验提示文案

    提交
    应该是hosts的问题

    校验提示文案

    提交
    收起所有回复
  • 这一路步骤这么多截图辛苦,看完决定如果不是非要ZFS的话坚决server2022走起,hyperv硬件效率已然很好了,不过PVE确实资源消耗少,这么些服务3455也能带动

    校验提示文案

    提交
    截图很累 [倒地] 所以很长时间没记录了。我也只是小白折腾而已,一阵一阵的,最近不想折腾,好久没碰。。。

    校验提示文案

    提交
    收起所有回复
  • 请教下作者,我按你方法,在pve下安装了一个lxc容器,装的是ubuntu 23.10,现在有个问题,pve面板下,看不到这个lxc的磁盘io使用状态,其他网络、cpu、内存这些倒是正常

    校验提示文案

    提交
    这个真没注意过,但是如果功能正常的话换个浏览器看看呢? 或者 清cookie后再看看

    校验提示文案

    提交
    收起所有回复
  • 好文,lxc下docker挂载SMB折腾了半天,这文章解决了

    校验提示文案

    提交
    [击掌]

    校验提示文案

    提交
    收起所有回复
  • 提供一个Portainer的Stacks配置做参考.在Volumes下新增一个名称为nas的卷,使用cifs方式链接后.在Stacks下使用下面的配置创建

    version: "3.7"
    services:
    jellyfin:
    container_name: jellyfin
    image: jellyfin/jellyfin:unstable
    restart: always
    network_mode: host
    environment:
    - PUID=0
    - PGID=0
    - TZ=Asia/Shanghai
    ports:
    - 8096:8096
    - 8920:8920
    volumes:
    # 挂载NAS
    - nas:/nas
    - /root/docker_data/jellyfin/config:/config
    - /root/docker_data/jellyfin/cache:/cache
    - /root/docker_data/jellyfin/media:/media
    devices:
    - /dev/dri/renderD128:/dev/dri/renderD128
    - /dev/dri/card0:/dev/dri/card0
    # 使用外部的volumes
    volumes:
    nas:
    external: true

    校验提示文案

    提交
    空格被zdm变了,看我发的文章吧 [喜极而泣]

    校验提示文案

    提交
    收起所有回复
  • 22. 稳定存储库 , 这命令里面有两处 [反斜杠] 这个改成上图一样, 一共两处, 色魔张大妈文章里奇葩不能写反斜杠 到达这一步就进行不下去胃命令输入椒错误的

    校验提示文案

    提交
  • 套几层娃呀

    校验提示文案

    提交
  • 出来了 [邪恶]

    校验提示文案

    提交
  • Lxc设置好开机自动nfs挂载不就行了吗,为啥费劲portainer 去搞,然后显卡也没这么烦啊,咋搞的这么复杂

    校验提示文案

    提交
  • 值友能不能写一个lxc下布置ssl证书的教程?

    校验提示文案

    提交
    你需要portainer还是jellyfin的ssl?

    校验提示文案

    提交
    都要呢,要分别部署吗?我以为lxc部署一下,其他服务就ok了

    校验提示文案

    提交
    还有7条回复
    收起所有回复
  • 实在太详细用心了.专门登录上来点赞评论感谢up [示爱]

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
190
扫一下,分享更方便,购买更轻松