侧边栏壁纸
博主头像
是羊刀仙啊博主等级

闲不下来!

  • 累计撰写 159 篇文章
  • 累计创建 44 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

威联通NAS的独显调用,EMBY启用硬件加速

羊刀仙
2025-06-10 / 0 评论 / 0 点赞 / 2 阅读 / 4675 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2025-06-10,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

本文会介绍如何在威联通NAS上部署Emby,并演示如何调用独显进行转码,以我作为主力NAS的TS-673A为如果例。

碎碎念

V1500B这颗U虽然有点老,但对于NAS来说整体其实还不错,毕竟今年的群晖新品NAS还在继续用~由于没有集显因此Emby只能软解(CPU占用会直接干满),再加上家里的小水管以及我有高频外网看视频的需求,独显是必备的。除此之外,我还购买了Emby的终身Premiere服务。各种开心版用过不少,但当你的使用频率够高后,会发现还是正版授权来的更舒服。我最终的使用评价是:贵但香!

截屏2025-06-10 09.38.01 拷贝.png

(当群友得知我入正后,便立马上车了)😂

这篇文章其实来的有些晚。从威联通TVS-675(兆芯处理器)发布这几年以来,虽然有在CHH等论坛看到大家讨论例如TS-675、TS-673A、TS-873A的PCIe扩展槽装什么显卡比较合适之类的话题,但却没有一篇完整的独显使用文章(可能大家NAS用独显的并不多吧!)。折腾的时候原本想着逃课抄作业,搜索一通却无作业可抄,不过最终捣鼓几下便成功了~

截屏2025-06-10 09.50.34 拷贝.png

那么作为一个NAS重度患者,尤其是威联通NAS用户,就再来为NAS使用心得再添砖加瓦!

PS:NAS具备PCIe且插了独显的朋友,即便你不是威联通NAS,我认为仍可作为参考。核显相关的教程貌似已经不少了,因此并没有再去进行额外的测试。另外,Jellyfin的用户也可参考本文进行尝试。

显卡相关

我这块卡是1050Ti,将其插到NAS的任意一个PCie插槽。

开机后在威联通的App Center中安装最新的NVIDIA_GPU_DRV后。

截屏2025-06-10 10.37.31 拷贝.png

打开控制台,可以在「系统」-「硬件」-「硬件资源」中看到GPU信息。

截屏2025-06-10 10.31.33 拷贝.png

资源使用一栏,将安装的显卡设置为Container Station模式,重启设备。

部署EMBY

部署代码如下,但是先别着急部署,还有准备需要做!

services:
  emby:
    image: emby/embyserver:latest
    container_name: embyserver
    network_mode: host
    runtime: nvidia-runtime  # 匹配你的 docker info 中的 runtime 名称
    restart: unless-stopped
    environment:
      - UID=0                # 设置容器内部的用户 ID 为 root 用户
      - GID=0                # 设置容器内部的组 ID 为 root 组
      - GIDLIST=0            # 设置其他需要的组 ID 列表
      - PUID=0               # 设置容器内的用户 ID 为 root 用户
      - PGID=0               # 设置容器内的组 ID 为 root 组
      - NVIDIA_VISIBLE_DEVICES=all
      - NVIDIA_DRIVER_CAPABILITIES=all
      - LANG=zh_CN.UTF-8
      - XDG_CACHE_HOME=/config/cache
      - TZ=Asia/Shanghai
    volumes:
      - /share/Container/emby/config:/config
      - /share/Media/Movies:/mnt/movies
      - /share/Media/TVShows:/mnt/tvshows
      - /share/Media/Anime:/mnt/anime
      - /share/Media/Documentaries:/mnt/documentaries
    ports:
      - 8096:8096  # HTTP port
      - 8920:8920  # HTTPS port
    # devices:
      # - /dev/dri:/dev/dri
    privileged: true

已使用runtime: nvidia-runtime,其实不再需要/dev/dri映射(它适用于 VAAPI 核显,NVENC/NVDEC 不依赖它。)。

如上面的部署代码,系统在尝试启动 Emby 容器时,Docker 尝试使用名为 nvidia 的 runtime,但一般的NAS系统都并未配置该 runtime,因此我们并不能部署成功。

所以需要我们进行以下操作:

通过SSH工具连接NAS,直接将以下指令拷贝后输入。

# 编辑 daemon.json 并添加 nvidia runtime

sudo tee /etc/docker/daemon.json > /dev/null <<-'EOF'
{
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    }
}
EOF

sudo tee:让写入文件的权限提升为 root

> /dev/null:避免内容被打印出来,纯粹是为了美观

运行以下命令查看配置文件内容:

cat /etc/docker/daemon.json

如下图所示,跟上面编辑进去的内容一致即可。

验证文本配置内容 拷贝.png

重启完毕后,运行以下命令验证。

docker info | grep -i runtime

你应看到类似于以下的输出结果:

Runtimes: n
idia runc
Default Runtime: runc

我这里的输出结果如下图所示。

验证是否识别 拷贝.png
接着重启设备。

Docker 成功识别了 nvidia-runtime,说明 daemon.json 文件配置已经生效。

runtime: nvidia-runtime便是我们所需要的。

这与Emby给出的部署命令并不相同(如下图),要改成你自己的设备所得(如上文)。

截屏2025-06-10 10.45.21 拷贝.png

修改完毕后如本节开头所示的代码,便是我这台TS-673A所使用的部署代码。

查看效果

Emby部署完毕后,进入控制台,左侧栏点击「正在转码」,选择高级硬件加速后便可看到独显相关了。

截屏2025-06-10 10.54.36 拷贝.png

进行网页播放测试,完全没问题,会自动进行转码。

emby查看播放信息-rfww.png

客户端也一样。

截屏2025-06-10 11.49.22 拷贝.png

至此便已经配置完成。

0

评论区