Instalace Jellyfin multimédia server
1) Připrav adresáře a práva
/usr/bin/sudo /usr/bin/mkdir -p /opt/jellyfin/{config,cache,media,transcode}
/usr/bin/sudo /usr/bin/chown -R $USER:$USER /opt/jellyfin
/usr/bin/sudo /usr/bin/chmod -R 775 /opt/jellyfin
Tip: do
/opt/jellyfin/mediasi nakopíruj knihovny (Filmy, Seriály, Hudba…).
Volitelné (lepší výkon při transkódování – tmpfs v RAM, zhruba 2–4 GB):
# pokud chceš mít transcode v RAM, přidej tmpfs mount do systému:
# (volitelné – pokud to nechceš, přeskoč)
/usr/bin/echo "tmpfs /opt/jellyfin/transcode tmpfs defaults,size=4g 0 0" | /usr/bin/sudo /usr/bin/tee -a /etc/fstab
/usr/bin/sudo /usr/bin/mount -a
2) YAML pro Portainer (Stack)
V Portaineru půjdeš na Stacks → Add stack a vložíš tento kód. Je kompatibilní se “standalone” Dockerem v Portaineru i se Swarmem (části pro GPU jsou okomentované).
Používám image lscr.io/linuxserver/jellyfin (má PUID/PGID a jednoduchá práva).
version: "3.8"
services:
jellyfin:
image: lscr.io/linuxserver/jellyfin:latest
container_name: jellyfin
restart: unless-stopped
environment:
- PUID=1000 # UID uživatele, který vlastní /opt/jellyfin
- PGID=1000 # GID uživatele, který vlastní /opt/jellyfin
- TZ=Europe/Prague
- UMASK=002
ports:
- "8096:8096" # HTTP
# - "8920:8920" # HTTPS (pokud budeš řešit certy přímo v Jellyfin)
# DLNA/Discovery – povol jen pokud je potřebuješ:
- "7359:7359/udp" # Jellyfin discovery
- "1900:1900/udp" # DLNA
volumes:
- /opt/jellyfin/config:/config
- /opt/jellyfin/cache:/cache
- /opt/jellyfin/media:/media:ro
- /opt/jellyfin/transcode:/transcode
# HARDWARE AKCELERACE (vyber si variantu a odkomentuj):
# ----- INTEL/AMD VAAPI (nejběžnější) -----
# devices:
# - /dev/dri:/dev/dri
# Pozn.: na některých Ubuntu je vhodné přidat skupiny video/render podle GID na hostu:
# group_add:
# - "44" # video (ověř: /usr/bin/getent group video)
# - "109" # render (ověř: /usr/bin/getent group render)
# ----- NVIDIA (pomocí nvidia-container-toolkit) -----
# environment:
# - NVIDIA_VISIBLE_DEVICES=all
# - NVIDIA_DRIVER_CAPABILITIES=compute,video,utility
# deploy:
# resources:
# reservations:
# devices:
# - capabilities: ["gpu"]
# Síť – vystačí defaultní bridge; pokud chceš samostatnou síť, vytvoř a přiřaď:
# networks:
# - jellyfin_net
# networks:
# jellyfin_net:
# driver: bridge
Pokud nasazuješ v Docker Swarmu, můžeš tento YAML rovnou použít jako stack i ve Swarm režimu. Pro NVIDIA v Swarmu ponech
deploy.resources.reservations.devices(jak je výše okomentováno).
3) Nasazení v Portaineru
-
Otevři Portainer → Stacks → Add stack.
-
Name:
jellyfin -
Do editoru vlož výše uvedený YAML.
-
Klikni Deploy the stack.
Po doběhnutí startu otevři web:
-
http://<IP_tvého_PC>:8096
První průvodce nastaví knihovny (/media), jazyk, uživatele a volitelně DLNA.
4) Volitelně: Intel/AMD/NVIDIA HW akcelerace
Základ (Intel/AMD – VAAPI)
-
Ověř, že host vidí GPU:
/usr/bin/ls -l /dev/driV YAML odkomentuj:
devices: - /dev/dri:/dev/dri(Volitelně) přidej
group_adds GID skupin video a render:/usr/bin/getent group video /usr/bin/getent group rendera čísla dosaď do YAML.
NVIDIA
-
Nainstaluj nvidia-container-toolkit:
/usr/bin/sudo /usr/bin/apt-get update /usr/bin/sudo /usr/bin/apt-get install -y nvidia-container-toolkit /usr/bin/sudo /usr/bin/nvidia-ctk runtime configure --runtime=docker /usr/bin/sudo /usr/bin/systemctl restart docker
-
V YAML odkomentuj NVIDIA sekci (env + deploy.devices).
Po nasazení povol HW akceleraci v Jellyfin: Dashboard → Playback → Transcoding → Hardware acceleration (VAAPI/NVENC).
5) Kontrola a logy
/usr/bin/docker ps --filter "name=jellyfin" /usr/bin/docker logs -f jellyfin6) Aktualizace Jellyfinu (bez ztráty dat)
V Portaineru otevři stack jellyfin → Update the stack (ponech
:latest), Portainer provede re-deploy.
Nebo přes CLI:/usr/bin/docker pull lscr.io/linuxserver/jellyfin:latest /usr/bin/docker stop jellyfin /usr/bin/docker rm jellyfin # pokud je to stack (swarm), použij spíš Portainer Update nebo: # /usr/bin/docker stack deploy -c /cesta/k/jellyfin.yml jellyfinData zůstávají v
/opt/jellyfin/configa knihovny v/opt/jellyfin/media. -
No comments to display
No comments to display