Tropic Host

Jellyfin pe VPS: instalează-ți propriul server media

7 min citire
Tropic
Jellyfin pe VPS: instalează-ți propriul server media

Language: ro

Jellyfin pe VPS: cum îți creezi propriul server media

Un folder plin cu videoclipuri rareori seamănă cu o bibliotecă media comodă: nume de fișiere inconsecvente, subtitrări separate și căutări manuale pentru episodul potrivit. Jellyfin transformă o astfel de arhivă într-un serviciu personal de streaming, cu postere, descrieri, profiluri de utilizator și progresul redării.

În același timp, Jellyfin nu vinde abonamente și nu oferă un catalog de conținut gata pregătit. Funcționează cu fișierele tale și poate rula pe un computer de acasă, pe un NAS sau pe un VPS. Mai jos analizăm funcțiile sale, cerințele serverului și instalarea pe Ubuntu, cu nume de domeniu și HTTPS.

Ce este Jellyfin și de ce ai putea avea nevoie de el

Jellyfin este un server media gratuit și open-source. Serverul indexează filme, seriale, muzică, fotografii și alte tipuri de conținut, iar aplicațiile client le redau pe telefon, computer sau televizor.

După scanarea folderelor, Jellyfin descarcă postere și descrieri, organizează serialele pe sezoane, reține progresul redării și afișează secțiunea „Continuă vizionarea”. Poți crea profiluri locale separate pentru membrii familiei, poți limita accesul la biblioteci și poți configura controale parentale. Quick Connect le permite utilizatorilor să se autentifice pe televizor folosind un cod scurt, fără să introducă o parolă lungă.

Clienții sunt disponibili pentru Android, iOS, Android TV, Roku, webOS, Tizen, Xbox și computere desktop. Jellyfin oferă și o interfață web, precum și integrare cu Kodi.

Jellyfin acceptă în plus muzică, IPTV, tunere TV și înregistrarea programelor TV live. SyncPlay sincronizează redarea pentru mai mulți utilizatori, iar pluginurile adaugă subtitrări, surse noi de metadate și integrări.

Jellyfin nu caută și nu descarcă singur filme. El doar organizează și transmite conținutul pe care proprietarul serverului îl deține deja.

Jellyfin vs. Plex: principalele diferențe

Ambele soluții transformă o colecție locală într-un serviciu media, dar folosesc modele diferite.

ParametruJellyfinPlex
Cod sursăOpen-sourceProprietar
Funcții premiumServerul și clienții oficiali nu au un nivel plătitUnele funcții depind de planul de abonament
Cont centralNu este necesarFolosește ecosistemul furnizorului
Acces de la distanțăProprietarul configurează domeniul, reverse proxy-ul sau VPN-ulOferă mai multe mecanisme gata de utilizare
Control asupra datelorMaximO parte din infrastructură este controlată de furnizor

Utilizatorii aleg Jellyfin pentru independență, confidențialitate și lipsa unui abonament. Plex poate fi mai convenabil când prioritățile principale sunt cea mai simplă configurare posibilă și aplicații finisate constant pe toate dispozitivele.

Direct Play sau transcoding: ce încarcă serverul

Performanța Jellyfin depinde mai puțin de dimensiunea bibliotecii decât de metoda de redare.

ModCe se întâmplăÎncărcare
Direct PlayServerul trimite fișierul originalScăzută
Direct StreamSe modifică containerul sau o pistă individualăScăzută sau medie
TranscodingCodec-ul, rezoluția sau rata de biți se modifică în timp realRidicată

Dacă televizorul acceptă codec-ul, pista audio și subtitrările fișierului, serverul folosește aproape deloc procesorul. Problemele apar când clientul nu poate gestiona formatul, conexiunea necesită o rată de biți mai mică sau subtitrările trebuie inscripționate în imagine. Atunci Jellyfin pornește FFmpeg și face transcodarea video în timp real.

4K, HEVC, HDR și conversia HDR-to-SDR sunt deosebit de solicitante. Un VPS obișnuit fără procesor grafic poate avea probleme chiar dacă dispune de multe nuclee CPU virtuale. Formatele compatibile și Direct Play pot economisi astfel mai mult decât trecerea la următorul plan de server.

De ce server are nevoie Jellyfin

Recomandarea oficială pentru o instalare obișnuită este de aproximativ 8 GB de RAM. Pe Linux fără interfață grafică, un server mic poate funcționa cu 4 GB. Este necesar un disc rapid pentru sistemul de operare, baza de date, imagini, cache și fișiere temporare; biblioteca media se păstrează separat și ocupă de obicei cea mai mare parte a spațiului.

ScenariuConfigurație de pornireObservație
Muzică și un flux 1080p Direct Play2 vCPU, 4 GB RAMRețeaua și viteza discului contează mai mult
Bibliotecă media mică pentru familie4 vCPU, 8 GB RAMSunt preferabile formatele compatibile
Transcoding 1080p ocazional4–8 vCPU de înaltă performanță sau un GPUÎncărcarea depinde de codec
Mai multe fluxuri 4K/HDRiGPU Intel modern sau placă videoUn VPS obișnuit doar cu CPU nu este potrivit

Nu uita să iei în calcul și traficul: un flux de 20 Mbps transferă aproximativ 9 GB de date pe oră. Cu vizionare zilnică, consumul poate ajunge rapid la sute de gigabytes pe lună.

Server de acasă sau VPS

Un mini PC de acasă sau un NAS este mai rentabil pentru o colecție de mai mulți terabytes și transcoding hardware regulat. Poți instala discuri de mare capacitate și poți alege un procesor cu Intel Quick Sync, însă accesul de la distanță depinde de electricitate, conexiunea de acasă și existența unei adrese IP publice.

Un VPS are adresă publică, conexiune stabilă și funcționează permanent. Este convenabil pentru muzică, o bibliotecă video mică, Direct Play și utilizatori aflați în locații diferite. Limitările sale sunt costul stocării și lipsa unui GPU în planurile standard.

Există și o opțiune hibridă: fișierele rămân acasă, iar VPS-ul servește drept punct de intrare securizat. Această configurație ajută când nu este disponibilă o adresă publică IPv4, dar viteza redării rămâne limitată de lățimea de bandă la upload a conexiunii de acasă.

Instalarea Jellyfin pe Ubuntu cu Docker Compose

În configurația de mai jos, Jellyfin și Caddy rulează în aceeași rețea Docker. Portul 8096 nu este expus pe internet; Caddy acceptă conexiuni HTTPS și obține automat un certificat.

Mai întâi, direcționează înregistrarea A a domeniului, de exemplu media.example.com, către adresa IP a serverului.

1. Instalează Docker și creează directoarele

sudo apt update
sudo apt install -y docker.io docker-compose-v2
sudo systemctl enable --now docker

sudo mkdir -p /opt/jellyfin/{config,cache,caddy-data,caddy-config}
sudo mkdir -p /srv/media/{movies,series,music}
cd /opt/jellyfin

2. Creează /opt/jellyfin/compose.yaml

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    restart: unless-stopped
    volumes:
      - ./config:/config
      - ./cache:/cache
      - /srv/media:/media:ro
    networks: [media]

  caddy:
    image: caddy:2
    container_name: jellyfin-caddy
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
      - "443:443/udp"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - ./caddy-data:/data
      - ./caddy-config:/config
    networks: [media]

networks:
  media:

Opțiunea :ro montează biblioteca media în modul doar pentru citire și protejează fișierele originale împotriva ștergerii accidentale prin Jellyfin.

3. Creează /opt/jellyfin/Caddyfile

media.example.com {
    reverse_proxy jellyfin:8096
}

Înlocuiește domeniul cu al tău, pornește containerele și deschide porturile necesare:

sudo docker compose up -d

sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 443/udp
sudo ufw enable

Dacă SSH folosește un alt port, permite-l cu o regulă separată înainte de a rula ufw enable.

După emiterea certificatului, deschide https://media.example.com. În setările de rețea Jellyfin, adaugă reverse proxy-ul în lista de proxy-uri de încredere, pentru ca restricțiile de acces extern să funcționeze corect.

Configurarea inițială a bibliotecii media

În asistentul de configurare, selectează limba, creează un administrator și adaugă bibliotecile:

  • filme — /media/movies;
  • seriale TV — /media/series;
  • muzică — /media/music.

Folosește nume clare pentru o identificare corectă:

/media/movies/Movie Title (2024)/Movie Title (2024).mkv
/media/series/Series Title (2024)/Season 01/Series Title S01E01.mkv

Creează un profil standard separat pentru vizionare și ascunde contul de administrator de pe ecranul de autentificare. Oferă utilizatorilor acces doar la bibliotecile de care au nevoie și nu permite ștergerea fișierelor decât dacă este necesar.

Actualizări și backupuri

Configurația Jellyfin conține utilizatori, setări, baza de date și progresul redării. Înainte de o actualizare, oprește containerul și salvează directorul config:

cd /opt/jellyfin
sudo docker compose stop jellyfin
sudo tar -czf /root/jellyfin-config-$(date +%F).tar.gz config
sudo docker compose start jellyfin

Mută arhiva în afara VPS-ului. Fă backup fișierelor media separat.

Pentru actualizare, rulează:

sudo docker compose pull
sudo docker compose up -d

Nu expune direct portul 8096. Folosește HTTPS sau un VPN, instalează regulat actualizările și monitorizează spațiul disponibil pe disc.

Jellyfin pe un VPS de la tropic.host

Pentru o bibliotecă media mică, bazată în principal pe Direct Play, poți începe cu un VPS Linux cu 4 GB de RAM. Pentru mai mulți utilizatori, o bază de date mare și servicii suplimentare, 8 GB este o alegere mai rezonabilă.

Când alegi un VPS de la tropic.host, evaluează separat capacitatea de stocare, traficul lunar și necesitatea transcodingului. Un server virtual este convenabil ca punct final permanent disponibil, cu IP public și HTTPS, dar nu înlocuiește un server cu GPU. Dacă ai nevoie de mai multe fluxuri 4K/HDR cu conversie de format, un server de acasă cu iGPU Intel, un server dedicat sau un plan specializat cu placă video este o opțiune mai bună.

Poți începe cu o colecție mică, poți verifica în tabloul de bord Jellyfin proporția sesiunilor Direct Play și abia apoi poți crește CPU-ul, memoria RAM sau stocarea, în funcție de încărcarea reală.

Rezumat

Jellyfin transformă propria colecție într-un serviciu personal de streaming, fără abonament obligatoriu sau cont central. Pentru o implementare reușită este important să estimezi din timp stocarea, traficul și probabilitatea transcodingului.

Un server mic care folosește Direct Play se poate descurca adesea cu 4–8 GB de RAM. Redarea regulată 4K/HDR necesită procesare video hardware. Indiferent de configurație, protejează accesul extern cu HTTPS sau VPN și fă backup separat pentru setări și biblioteca media.

FAQ

Jellyfin este complet gratuit?

Da. Serverul și clienții sunt disponibili fără un plan premium. Trebuie să plătești doar pentru hardware, VPS, discuri, domeniu și trafic.

Jellyfin include filme și seriale gata de vizionat?

Nu. Utilizatorii își adaugă propriile fișiere media.

Poate rula Jellyfin pe un VPS fără placă video?

Da, dacă majoritatea fișierelor sunt redate prin Direct Play. Transcodingul frecvent pentru 4K și HDR necesită un server cu un iGPU sau o placă video potrivită.

De câtă memorie RAM are nevoie Jellyfin?

Un server Linux mic poate rula cu 4 GB de RAM. Pentru o bibliotecă media de familie și mai mulți utilizatori, 8 GB este o țintă mai bună.

Cum accesez Jellyfin în siguranță prin internet?

Folosește un domeniu și HTTPS prin reverse proxy sau utilizează un VPN. Nu expune direct portul 8096 și creează conturi separate cu permisiuni minime.