Jellyfin 是一款开源免费的流媒体影视服务,强大好用,全平台支持。与之相对的Plex和 Emby 都是收费工具。
安装 Jellyfin
一般需要用到 Jellyfin 都是 NAS 设备,所以装在容器里隔离更省事。当前 Docker 仓库有三个主流的 Jellyfin 容器:
- jellyfin/jellyfin 为官方镜像。
- linuxserver/jellyfin 可以在 ARM 平台使用。
- nyanmisaka/jellyfin 由国人集成了显卡驱动和字体,不过没这个必要。
Jellyfin 容器的安装步骤如下:
- 首先安装 Docker。
1.先卸载旧版,如果没有的话,就不用执行了,直接第二步。
apt-get remove docker docker-engine docker.io containerd runc
2.在终端输入
apt update
apt-get install ca-certificates curl gnupg lsb-release
3.安装证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
4.写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
5.安装
sudo apt-get install docker-ce docker-ce-cli containerd.io
中途出现问题的话,使用 sudo apt-get update 试试
6 启动Docker
systemctl start docker
7.安装工具
apt-get -y install apt-transport-https ca-certificates curl software-properties-common
8.重启docker
service docker restart
9.测试输入sudo docker run hello-world 显示以下信息则成功,第一次比较慢。
sudo docker run hello-world
10.查看版本
sudo docker version
11.查看镜像,可以看到刚才创建的镜像
sudo docker images
12.启动 Docker
sudo systemctl start docker
13添加开机启动
sudo systemctl enable docker
14.查看 Docker启动状态
sudo systemctl status docker
- 部署 Jellyfin 容器:
docker run -d
--net mybridge
--name jellyfin
-p 8096:8096
-v /home/ubuntu/mount0/jellyfin/config:/config
-v /home/ubuntu/mount0/jellyfin/cache:/cache
-v /home/ubuntu/mount0:/media
--restart=unless-stopped
jellyfin/jellyfin
如果网络报错 按如下命令
docker run -d
--net mybridge
--name jellyfin
-p 8096:8096
-v /home/ubuntu/mount0/jellyfin/config:/config
-v /home/ubuntu/mount0/jellyfin/cache:/cache
-v /home/ubuntu/mount0:/media
--restart=unless-stopped
jellyfin/jellyfin
或者
docker run -d --name jellyfin4 -p 8096:8096 -v /home/ubuntu/mount0/jellyfin/config:/config -v /home/ubuntu/mount0/jellyfin/cache:/cache -v /home/ubuntu/mount0:/media --restart=unless-stopped jellyfin/jellyfin
浏览器访问你的服务器:http://10.10.201.224:8096
- 然后就可以在网页上配置各类信息。各个系统的客户端见 Jellyfin Clients。还可以在 Kodi 上安装 Jellyfin 插件,使得在电视上观看。
GPU 硬解 (Nvidia)
网上找到了很多 Nvidia 显卡硬解 Jellyfin 的教程,但是大部分都是老旧不堪的,方法也是五花八门,更是还有在教用nvidia-docker2
的。
其实最好的教程就在 Jellyfin 的官网。具体步骤如下:
- 首先需要在服务器安服务器托管网装 Nvidia 驱动。
- 安装 Nvidia Container Toolkit,具体见官网。使用以下命令即可:
首先配置仓库:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list |
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' |
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
&&
sudo apt-get update
更新仓库并安装 NVIDIA Container Toolkit 组件:
sudo apt-get install -y nvidia-container-toolkit
- 重新安装 Jellyfin (如果之前安装了要删除容器):
docker run -d
--net mybridge
--name jellyfin
-p 8096:8096
-v /home/ubuntu/mount0/docker/jellyfin/config:/config
-v /home/ubuntu/mount0/docker/jellyfin/cache:/cache
-v /home/ubuntu/mount0:/media
--restart=unless-stopped
--gpus all
jellyfin/jellyfin
GPU 硬解 (Intel)
集显目前我还不需要,等以后需要用到时在写。
官方教程: Intel GPU | Jellyfin。
常见问题
字体渲染出错
在安装后 Jellyfin 打开曾遇到过一个问题,即电影字幕显示为方块乱码。这是因为字体渲染错误所导致,需要额外增加汉字字体文件。具体步骤如下:
- 下载汉字字体。如果字体是
.ttf
格式的嫌它太大,可以在 CloudConvert, MiConv, AnyConv等服务器托管网网站将其压缩为.woff2
格式。 - 将字体移动到 Jellyfin 挂载配置目录下,新建一个
font
文件夹并把字体放进去。 - 在 Jellyfin 网页界面,选择设置 > 播放,在备用字体文件路径找到字体文件,并勾选启动备用字体。注意要拉到最下面保存。
- 重新打开视频播放即可。
媒体库扫描太慢
更新媒体资源后,发现 Jellyfin 扫描太慢了。原因主要是 Jellyfin 下载资源的元数据时受天朝网络限制所导致的。
因为我已经在使用刮削器,也就不需要用到自动检索的元数据了、
在媒体库设置页面,将下列两项去除勾选。并保存后重新扫描即可。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: DeeTune:基于 eBPF 的百度网络框架设计与应用
作者 | 百度APP云原生技术研发组 导读 随着云计算的技术的不断迭代演进,百度内部服务逐渐搬迁到云环服务器托管网境中,部署成本和效率取得明显收益,但一些可观测能力的短板和缺失逐渐显露,传统的方式往往通过植入代码进行修改来实现,但在业务形态和技术栈多样性的背景…