Hogyan telepítsük a Jellyfint Dockerrel lépésről lépésre

Utolsó frissítés: 01/09/2026

  • A Jellyfin hivatalos képfájlja leegyszerűsíti a telepítést és elszigetelten tartja a függőségeket.
  • Az állandó kötetek megőrzik a konfigurációt, a gyorsítótárat és a metaadatokat, amikor a konténer újra létrejön.
  • A multimédiás mappák írásvédettként is csatlakoztathatók a véletlen módosítások elkerülése érdekében.
  • Az UID, a GID és az engedélyek határozzák meg, hogy a Jellyfin olvashat-e fájlokat.
Hogyan telepítsük a Jellyfint Dockerrel lépésről lépésre

Jellyfin telepítése Dockerrel Lehetővé teszi, hogy egy kompatibilis számítógépet, otthoni szervert vagy NAS-t privát platformmá alakíts filmek, tévéműsorok, zene és fényképek lejátszására. A fájlok továbbra is az Ön felügyelete alatt maradnak, és tévékről, mobiltelefonokról, webböngészőkről és más kompatibilis eszközökről is elérheti őket.

A Docker egy konténeren belül tartja a Jellyfint és annak függőségeit, leegyszerűsítve a telepítést, a karbantartást és a frissítéseket. A konfigurációt, a gyorsítótárazást és a metaadatokat azonban külön konténerben kell tárolni. állandó kötetek hogy ne tűnjenek el, amikor a konténert újra létrehozzák.

Ez az útmutató a következőt használja: Ubuntu szerver Docker Composite-tal és a hivatalos Jellyfin kép. Az eljárás más Linux disztribúciókhoz is adaptálható, bár a telepítési parancsok és az engedélyek kezelése eltérhet.

állítson be egy mini otthoni szervert
Kapcsolódó cikk:
Hogyan építsünk otthoni mini szervert olcsó hardverrel

Amire szükséged van a Jellyfin Dockerrel történő telepítéséhez

Amire szükséged van a Jellyfin Dockerrel történő telepítéséhez

Mielőtt elkezdené, a következő összetevőkre lesz szüksége:

  • Egy kompatibilis Linux disztribúcióval rendelkező szerver vagy számítógép.
  • Docker Engine és a Docker Compose bővítmény.
  • Statikus IP-cím vagy DHCP-foglalás a szerver számára.
  • Elegendő hely a konfigurációhoz, a gyorsítótárazáshoz és az ideiglenes átkódoláshoz.
  • Olvasási hozzáférés azokhoz a mappákhoz, ahol a multimédiás fájlok tárolva vannak.
  • Stabil hálózati kapcsolat, lehetőleg Etherneten keresztül.

A konténeres telepítés hivatalosan Linuxra van tervezve. Bár a Docker Desktop lehetővé teszi a konténerek futtatását Windows és macOS rendszereken, a Jellyfin figyelmeztet, hogy egyes funkciók, különösen a hardveres gyorsítású átkódolásLehetséges, hogy ezeken a rendszereken nem működnek megfelelően.

Milyen hardverre van szüksége egy Jellyfin szervernek?

A követelmények kevésbé függenek a könyvtár méretétől, mint inkább a lejátszási típustól. Amikor a kliens eszköz támogatja a fájl formátumát, kodekjét, hangját, feliratait és bitrátáját, a Jellyfin használhatja közvetlen lejátszásEbben az esetben a szerver alig dolgozza fel a videót, és szerény eszközökön is futtatható.

A munkaterhelés megnő, amikor a Jellyfinnek valós időben kell tartalmat konvertálnia. Ez előfordulhat inkompatibilis kodek, beágyazandó feliratok, túlzott bitráta vagy a HDR SDR-re konvertálásának szükségessége miatt. Ezért nincs egyetlen olyan magszám vagy elegendő memória, amely minden felhasználónak megfelelne.

Több egyidejű átkódolási folyamathoz ajánlott egy integrált Intel GPU-t használni, amely támogatja a Quick Sync-et, egy NVIDIA GPU-t, amely támogatja az NVENC-et, vagy bizonyos AMD modelleket. A feltöltési sávszélességet is figyelembe kell venni, ha... Hozzáférés a Jellyfinhez otthonon kívül.

Ha még mindig a hardvert és a tárhelyet választod, gondold át, hogy dedikált számítógépre, mini PC-re vagy egy… Otthoni NAS.

Hogyan telepítsük a Docker Engine-t Ubuntu szerverre

Hogyan telepítsük a Docker Engine-t Ubuntu szerverre

Először frissítsd a rendszercsomagokat:

sudo apt update
sudo apt upgrade -y

Telepítsd a szükséges eszközöket és add hozzá a hivatalos Docker kulcsot:

sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

Ezután konfigurálja a hivatalos adattárat:

sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

Telepítsd a Docker Engine-t és a Compose bővítményt:

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin

Ellenőrizd, hogy mindkét komponens elérhető-e:

sudo docker run --rm hello-world
sudo docker compose version

Opcionálisan hozzáadhatja a felhasználóját a csoporthoz. docker parancsok végrehajtása anélkül, hogy sudo:

sudo usermod -aG docker "$USER"

Jelentkezzen ki, majd jelentkezzen be újra a módosítás érvénybe léptetéséhez. Ne feledje, hogy A Docker csoporthoz való tartozás az adminisztrátori jogosultságokkal egyenértékű jogosultságokat biztosít. a rendszerről. Ne adjon hozzá olyan felhasználókat, akik nem megbízhatóak.

Exkluzív tartalom – Kattintson ide  TAG Heuer Connected Caliber E5: ugrás a saját szoftverhez és egy New Balance kiadáshoz

Hogyan készítsünk elő állandó mappákat

Hozz létre egy külön mappát a kompozíciós fájlnak, a konfigurációnak és a gyorsítótárnak:

sudo mkdir -p /opt/jellyfin/config
sudo mkdir -p /opt/jellyfin/cache
sudo chown -R "$(id -u)":"$(id -g)" /opt/jellyfin
cd /opt/jellyfin

A médiamappák lehetnek egy másik meghajtón. Ez egy egyszerű struktúra lenne:

/srv/media/
├── peliculas/
├── series/
└── musica/

Ezen útvonalak használata nem kötelező. A lényeg az, hogy különbséget tegyünk a ... között. meglévő elérési út a gazdagépen és az utat, amelyet Jellyfin később látni fog a konténer belsejében.

Szerezd meg a Jellyfint futtató felhasználó UID-ját és GID-jét:

id -u
id -g

Hozz létre egy fájlt, melynek neve .env belül /opt/jellyfin és elmenti a kapott értékeket:

JELLYFIN_UID=1000
JELLYFIN_GID=1000

Cseréli 1000 a rendszer tényleges értékein alapul. Ennek a felhasználónak képesnek kell lennie az összes multimédiás könyvtár olvasására és a mappákba való írásra. config y cache.

A Jellyfin Docker Compose fájl konfigurálása

A Jellyfin Docker Compose fájl konfigurálása

Hozza létre a fájlt /opt/jellyfin/docker-compose.yml ezzel a konfigurációval:

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    user: "${JELLYFIN_UID}:${JELLYFIN_GID}"
    ports:
      - "8096:8096/tcp"
      - "7359:7359/udp"
    volumes:
      - type: bind
        source: ./config
        target: /config
      - type: bind
        source: ./cache
        target: /cache
      - type: bind
        source: /srv/media/peliculas
        target: /media/peliculas
        read_only: true
      - type: bind
        source: /srv/media/series
        target: /media/series
        read_only: true
      - type: bind
        source: /srv/media/musica
        target: /media/musica
        read_only: true
    restart: unless-stopped

A kikötő 8096/TCP Hozzáférést biztosít a webes felülethez. A port 7359/UDP A helyi hálózaton belüli automatikus felderítésre szolgál, és eltávolítható, ha nincs szüksége erre a funkcióra.

A multimédiás fájlok a következőképpen vannak csatolva: csak olvashatóEz csökkenti a véletlen módosítások kockázatát, de megakadályozza, hogy a Jellyfin NFO fájlokat, képeket vagy más adatokat írjon az adathordozó mellé. Ha ezeket a funkciókat használni szeretné, távolítsa el a read_only: true csak a szükséges mappákban.

A szolgáltatás indítása előtt ellenőrizze a szintaxist:

docker compose config

Ha a parancs nem mutat hibákat, töltse le a képet és indítsa el a tárolót:

docker compose pull
docker compose up -d

Ellenőrizd az állapotát és tekintsd meg a rekordokat:

docker compose ps
docker compose logs -f jellyfin

Sajtó Ctrl+C a naplók nézetből való kilépéshez a konténer leállítása nélkül.

A kezdeti beállítás elvégzése

Nyisson meg egy böngészőt a hálózat bármelyik számítógépéről, és írja be:

http://IP_DEL_SERVIDOR:8096

A kezdeti beállító varázsló lehetővé teszi a nyelv kiválasztását, rendszergazdai fiók létrehozását és könyvtárak hozzáadását. Használjon erős jelszót, és ezt a fiókot tartsa fenn adminisztratív feladatokhoz.

Médiamappák hozzáadásakor ki kell választania a belső konténer útvonalak:

  • /media/peliculas
  • /media/series
  • /media/musica

Ne lépjen be /srv/media/peliculasmivel ez az elérési út csak a gazdagépen létezik. A konténeren belül hozzá van rendelve a következőhöz: /media/peliculas.

Válasszon ki egy adott könyvtártípust minden tartalomtípushoz. Kerülje a filmek, tévéműsorok és zenék keverését ugyanabban a könyvtárban. Ha neveket, metaadat-szolgáltatókat és mappaszerkezeteket kell konfigurálnia, tekintse meg, hogyan teheti meg. Filmek és tévéműsorok hozzáadása és rendszerezése a Jellyfinben.

Exkluzív tartalom – Kattintson ide  A TextMate támogatja az SCSS fájlok szerkesztését?

Az Intel Quick Sync gyorsítás engedélyezése

Az Intel Quick Sync gyorsítás engedélyezése

Kompatibilis Intel rendszereken először ellenőrizze, hogy létezik-e a renderelőeszköz:

ls -l /dev/dri/

Általában úgy fog megjelenni, mint /dev/dri/renderD128A csoport azonosítójának lekérése render:

getent group render | cut -d: -f3

Adja hozzá az eredményt a fájlhoz .env:

JELLYFIN_RENDER_GID=122

Az érték 122 Ez csak egy példa. Ezután add hozzá ezeket a sorokat a szolgáltatáshoz. jellyfin a Compose fájlból:

    group_add:
      - "${JELLYFIN_RENDER_GID}"
    devices:
      - /dev/dri/renderD128:/dev/dri/renderD128

Hozza létre újra a tárolót, és ellenőrizze, hogy a Jellyfin képes-e érzékelni a GPU-t:

docker compose up -d
docker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/vainfo

Belépés Vezérlőpult > Lejátszás > ÁtkódolásVálaszd az Intel Quick Sync vagy a VA-API lehetőséget, és csak a hardvereddel kompatibilis kodekeket engedélyezd.

Az eszköz konténerhez való egyszerű hozzáadása nem engedélyezi automatikusan a gyorsítást. Célszerű lejátszani egy átkódolást igénylő fájlt, és ellenőrizni az FFmpeg naplókat, hogy megbizonyosodjon arról, hogy a GPU működik.

Hogyan használjuk az NVIDIA GPU-t

A hivatalos Jellyfin rendszerkép nem tartalmazza az NVIDIA saját illesztőprogramját. Mind az illesztőprogramot, mind az illesztőprogramot telepíteni kell a gazdagépre. NVIDIA konténer eszközkészlet.

Ezután add hozzá a Jellyfin szolgáltatáshoz:

    runtime: nvidia
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]

Hozza létre újra a tárolót, és ellenőrizze, hogy látható-e a kártya:

docker compose up -d
docker exec -it jellyfin nvidia-smi

Végül válassza ki NVENC az átkódolási beállításokban. Ne kombináld ezt a beállítást az Intel beállításaival, hacsak nem tudod pontosan, melyik eszközt szeretnéd használni.

Hogyan állítsunk be egy NAS-on tárolt könyvtárat?

Ha a fájlok NAS vagy Samba erőforráson vannak, a legstabilabb megközelítés az, ha először csatlakoztatjuk a hálózati erőforrást az Ubuntuban, majd ezt az elérési utat egy bind mount segítségével átadjuk a konténernek.

Szerelje fel a CIFS konzolt és hozza létre a rögzítési pontot:

sudo apt install -y cifs-utils
sudo mkdir -p /mnt/media

Mentse el a NAS hitelesítő adatait egy olyan fájlba, amelyhez csak a rendszergazda férhet hozzá, és használja /etc/fstab hogy a csatolás megmaradjon az újraindítás után. Ezután adja hozzá az elérési utat a Compose fájlhoz:

      - type: bind
        source: /mnt/media
        target: /media/nas
        read_only: true

Ha a Jellyfin látja a mappát, de az üresnek tűnik, ellenőrizze az erőforrás-engedélyeket, a csatoláskor használt UID-t és GID-t, valamint az összes szülőkönyvtár végrehajtási engedélyeit. Erről a konfigurációról bővebben az útmutatóban olvashat. tárhely otthoni NAS-on.

Hogyan férhetsz hozzá a Jellyfinhez otthonod kívülről

Ne tegye közzé közvetlenül a 8096-os portot az internetenA Jellyfin dokumentációja VPN használatát vagy egy HTTPS-sel ellátott fordított proxy elhelyezését javasolja a szerver elé.

Egy VPN, mint például a Tailscale, lehetővé teszi a privát hálózat elérését anélkül, hogy közvetlenül kitennéd magad a Jellyfinnek. Fordított proxyként Caddyt, Nginxet vagy Traefiket is használhatsz.

A Caddy automatikusan képes TLS-tanúsítványok beszerzésére és megújítására, de általában megköveteli, hogy a domain a nyilvános IP-címedre mutasson, és a 80-as és 443-as portok elérjék a szervert. Ezért... A fordított proxy nem feltétlenül jelent portok megnyitása nélküli hozzáférést..

Ha el szeretné kerülni a hagyományos nyilvános expozíciót, nézze meg, hogyan A Jellyfin eléréséhez otthonról, portok megnyitása nélkül.

Exkluzív tartalom – Kattintson ide  Hogyan lehet az Autoruns segítségével eltávolítani azokat a programokat, amelyek engedély nélkül automatikusan elindulnak?

A felhasználók egyszeri bejelentkezéssel történő központosításához a következőket is megteheti: Csatlakozz az Authentichoz a JellyfinnelElőször is meg kell majd tenned Az Authentik telepítése Dockerrel és gondosan konfigurálja a csoportokat és az engedélyeket.

Hogyan frissítsük a Jellyfint Dockerrel?

Frissítés előtt készítsen biztonsági másolatot a Vezérlőpult > Biztonsági mentésekA Jellyfin jelenlegi verziói lehetővé teszik a másolat létrehozását a szerver futása közben, bár a legjobb ezt akkor megtenni, amikor nincsenek felhasználók, akik tartalmat játszanak le, vagy aktív vizsgálat van folyamatban.

Ezután frissítse a képet, és hozza létre újra a tárolót:

cd /opt/jellyfin
docker compose pull
docker compose up -d

A frissítés után ellenőrizd a naplókat:

docker compose logs --tail=100 jellyfin

Az állandó adatok a mappákban maradnak. config y cacheNéhány verzió azonban migrációkat alkalmaz az adatbázisra, és A Jellyfinnek nincs lebomlási mechanizmusaHa vissza kell térnie egy korábbi verzióra, akkor egy kompatibilis biztonsági mentést kell visszaállítania.

Gyakori hibák Jellyfin Dockerrel történő telepítésekor

Gyakori hibák Jellyfin Dockerrel történő telepítésekor

A konténer folyamatosan újraindul

Végrehajtás docker compose logs jellyfin és ellenőrizd a mappa jogosultságait config y cacheAz UID és GID definiálva van a .env Írásbeli engedéllyel kell rendelkezniük.

A könyvtár üresnek tűnik.

Ellenőrizze, hogy a gazdagép elérési útja létezik-e, a kötet megfelelően van-e csatlakoztatva, és hogy a konténer felhasználója böngészheti és olvashatja-e az összes könyvtárát. A Jellyfinen belül ki kell választania a belső elérési utat, például: /media/peliculas.

Engedély megtagadva a fájlok szkennelésekor

Ne oldd meg a problémát jogosultságok alkalmazásával. 777Ellenőrizd a tulajdonos, a csoport, valamint az olvasási és végrehajtási jogosultságokat. Ha NAS-t használsz, ellenőrizd az erőforrás csatlakoztatásához használt beállításokat is.

A 8096-os port nem nyitható meg

Egy másik folyamat használhatja a portot. Ellenőrizze a következővel:

sudo ss -ltnp | grep 8096

Ha foglalt, állítsa le a felelős szolgáltatást, vagy módosítsa például a bal oldali portot a leképezésben. 8097:8096.

A GPU megjelenik a gazdagépen, de nem a Jellyfinben

Az Intelnél ellenőrizd az eszközt. /dev/dri/renderD128 és a csoportazonosító renderAz NVIDIA-ban ellenőrizze az illesztőprogramot, az NVIDIA Container Toolkit eszközt és a kimenetet. docker exec -it jellyfin nvidia-smi.

A videó továbbra is használja a CPU-t

Attól, hogy a GPU látható, még nem jelenti azt, hogy minden formátum gyorsított. Ellenőrizd a támogatott kodekeket, az átkódolási beállításokat és az FFmpeg regisztereket. Egyes feliratok és szűrők továbbra is használhatják a CPU-t.

A Jellyfin működik, de nem jelenik meg automatikusan az eszközökön.

Ellenőrizze, hogy a port 7359/UDP Közzé kell tenni és engedélyezni kell a helyi hálózaton. Ha DLNA-ra van szükséged, a hivatalos dokumentáció szerint hálózati módot kell használnod. host.

Jellyfin telepítése Docker Composite segítségével Lehetővé teszi a médiaszerver elkülönítését és leegyszerűsíti az adminisztrációját, de a végső megbízhatóság a használt kötetektől, engedélyektől és elérési utakon múlik. Miután a konténer üzembe helyeződött és fut, hozzáadhatja a könyvtárakat, létrehozhat felhasználókat, és engedélyezheti a hardvernek megfelelő átkódolást.

Mielőtt elérhetővé tennéd a szolgáltatást az otthoni hálózatodon kívül, konfigurálj HTTPS-t vagy VPN-t, és készíts biztonsági másolatot a konfigurációs mappáról. Így frissítheted a szervert anélkül, hogy elveszítenéd a felhasználókat, a metaadatokat vagy a lejátszási előzményeket.

Hogyan állítsunk be gyermekprofilokat a Jellyfinben
Kapcsolódó cikk:
Hogyan állítsunk be gyermekprofilokat a Jellyfinben