Jellyfin
Jellyfin - стриминговый сервер, позволяющий организовать стриминг кинчиков, сериальчиков. Так же имеет фунционал для организации стриминга музыки и даже чтения книжек/комиксов, но удобство использования последних оставляет желать лучшего.
Поддерживает рендер видео на лету используя ресурсы CPU, что долго и ориентировано на 1 пользователя максимум, или же использование аппаратного рендера средствами QuickSync, VA-API, NVENC. По видеокарточкам - Nvidia GTX 1050 и выше, по QuickSync - Intel CPU 9 поколение+ желательно (Но без индекса F).
Установка с пакета (но через скрипт)
В debian/ubuntu - лучших традициях через внешний sh скрипт
curl https://repo.jellyfin.org/install-debuntu.sh | sudo bash sudo bash install-debuntu.sh
Установка через бинарник
Создадим папку и перейдем
sudo mkdir /opt/jellyfin cd /opt/jellyfin
Находим на странице репозитория ссылку на последнюю версию и копируем tar.gz. Далее скачаем и распакуем. После распаковки создадим символическую ссылку и создадим папки.
sudo wget https://repo.jellyfin.org/files/server/linux/latest-stable/amd64/jellyfin_10.10.7-amd64.tar.gz sudo tar xvzf jellyfin_10.10.7-amd64.tar.gz sudo ln -s jellyfin_10.10.7 jellyfin sudo mkdir data cache config log
Бинарник готов, осталось организовать FFmpeg. В связке с Jellyfin рекомендуется использовать кастомный билд который можно взять так же в репозитории. В моем случае это Debian, поэтому просто находим deb пакет и ставим.
wget https://repo.jellyfin.org/files/ffmpeg/debian/latest-7.x/amd64/jellyfin-ffmpeg7_7.1.1-2-bookworm_amd64.deb sudo dpkg -i jellyfin-ffmpeg7_7.1.1-2-bookworm_amd64.deb
Создадим скрипт jellyfin.sh который будет запускаться как сервер
#!/bin/bash JELLYFINDIR="/opt/jellyfin" FFMPEGDIR="/usr/share/jellyfin-ffmpeg" $JELLYFINDIR/jellyfin/jellyfin \ -d $JELLYFINDIR/data \ -C $JELLYFINDIR/cache \ -c $JELLYFINDIR/config \ -l $JELLYFINDIR/log \ --ffmpeg $FFMPEGDIR/ffmpeg
Файлу дадим права на запуск и назначим пользователя:
sudo chown -R user:group * sudo chmod u+x jellyfin.sh
Далее создаем systemd службу которая будет запускаться автоматически при старте системы. Создадим файл /etc/systemd/system/jellyfin.service
[Unit] Description=Jellyfin After=network.target [Service] Type=simple User=youruser Restart=always ExecStart=/opt/jellyfin/jellyfin.sh [Install] WantedBy=multi-user.target
По классике перезагружаем демон systemd и запускаем. Так же не забываем поставить на автостарт
sudo systemctl daemon-reload sudo systemctl enable jellyfin.service sudo systemctl start jellyfin.service