Tropic Host

Jellyfin-ը VPS-ում․ սեփական մեդիա սերվերի տեղադրում

2 րոպե կարդալ
Tropic
Jellyfin-ը VPS-ում․ սեփական մեդիա սերվերի տեղադրում

Language: hy

Jellyfin-ը VPS-ում․ ինչպես ստեղծել սեփական մեդիա սերվերը

Տեսանյութերով լի թղթապանակը հազվադեպ է հարմար մեդիա գրադարան հիշեցնում․ ֆայլերի անհամապատասխան անուններ, առանձին ենթագրեր և անհրաժեշտ սերիան ձեռքով փնտրելու անհրաժեշտություն։ Jellyfin-ը նման արխիվը վերածում է անձնական հոսքային ծառայության՝ պաստառներով, նկարագրություններով, օգտատերերի պրոֆիլներով և դիտման առաջընթացով։

Միևնույն ժամանակ Jellyfin-ը բաժանորդագրություններ չի վաճառում և պատրաստի բովանդակության կատալոգ չի տրամադրում։ Այն աշխատում է ձեր սեփական ֆայլերի հետ և կարող է գործարկվել տնային համակարգչում, NAS-ում կամ VPS-ում։ Ստորև կքննարկենք դրա հնարավորությունները, սերվերի պահանջները և Ubuntu-ում տեղադրումը դոմենային անունով ու HTTPS-ով։

Ի՞նչ է Jellyfin-ը և ինչու կարող է այն անհրաժեշտ լինել

Jellyfin-ը անվճար, բաց կոդով մեդիա սերվեր է։ Սերվերը ինդեքսավորում է ֆիլմերը, սերիալները, երաժշտությունը, լուսանկարները և այլ բովանդակություն, իսկ հաճախորդային հավելվածները դրանք նվագարկում են հեռախոսում, համակարգչում կամ հեռուստացույցում։

Թղթապանակները սկանավորելուց հետո Jellyfin-ը ներբեռնում է պաստառներն ու նկարագրությունները, կազմակերպում սերիալներն ըստ սեզոնների, հիշում դիտման առաջընթացը և ցուցադրում «Շարունակել դիտումը» բաժինը։ Կարող եք ընտանիքի անդամների համար ստեղծել առանձին տեղական պրոֆիլներ, սահմանափակել գրադարանների հասանելիությունը և կարգավորել ծնողական վերահսկողությունը։ Quick Connect-ը թույլ է տալիս հեռուստացույցում մուտք գործել կարճ կոդով՝ երկար գաղտնաբառ մուտքագրելու փոխարեն։

Հաճախորդային հավելվածները հասանելի են Android-ի, iOS-ի, Android TV-ի, Roku-ի, webOS-ի, Tizen-ի, Xbox-ի և աշխատասեղանի համակարգիչների համար։ Jellyfin-ը տրամադրում է նաև վեբ ինտերֆեյս և Kodi-ի ինտեգրում։

Jellyfin-ը լրացուցիչ աջակցում է երաժշտությանը, IPTV-ին, հեռուստատեսային թյուներներին և ուղիղ եթերի ձայնագրմանը։ SyncPlay-ը համաժամացնում է դիտումը մի քանի օգտատերերի համար, իսկ plugin-ները ավելացնում են ենթագրեր, մետատվյալների նոր աղբյուրներ և ինտեգրումներ։

Jellyfin-ը ինքնուրույն ֆիլմեր չի որոնում և ներբեռնում։ Այն միայն կազմակերպում և հեռարձակում է այն բովանդակությունը, որն արդեն ունի սերվերի սեփականատերը։

Jellyfin-ը և Plex-ը․ հիմնական տարբերությունները

Երկու լուծումներն էլ տեղական հավաքածուն վերածում են մեդիա ծառայության, սակայն օգտագործում են տարբեր մոդելներ։

ՊարամետրJellyfinPlex
Ելակետային կոդԲաց կոդովՍեփականատիրական
Պրեմիում հնարավորություններՍերվերը և պաշտոնական հաճախորդները վճարովի մակարդակ չունենՈրոշ հնարավորություններ կախված են բաժանորդագրության ծրագրից
Կենտրոնական հաշիվՊարտադիր չէՕգտագործում է մատակարարի էկոհամակարգը
Հեռահար հասանելիությունՍեփականատերը կարգավորում է դոմենը, reverse proxy-ն կամ VPN-ըՏրամադրում է ավելի շատ պատրաստի մեխանիզմներ
Տվյալների նկատմամբ վերահսկողությունԱռավելագույնԵնթակառուցվածքի մի մասը վերահսկում է մատակարարը

Մարդիկ Jellyfin-ն ընտրում են անկախության, գաղտնիության և բաժանորդագրության բացակայության համար։ Plex-ը կարող է ավելի հարմար լինել, երբ առաջնահերթ են հնարավորինս պարզ կարգավորումը և բոլոր սարքերում հետևողականորեն մշակված հավելվածները։

Direct Play կամ transcoding․ ինչն է բեռնում սերվերը

Jellyfin-ի արտադրողականությունն ավելի քիչ է կախված գրադարանի չափից, քան նվագարկման եղանակից։

ՌեժիմԻնչ է տեղի ունենումԲեռ
Direct PlayՍերվերը ուղարկում է սկզբնական ֆայլըՑածր
Direct StreamՓոխվում է կոնտեյները կամ առանձին հոսքըՑածր կամ միջին
TranscodingԿոդեկը, լուծաչափը կամ բիթային արագությունը փոխվում է անմիջապեսԲարձր

Եթե հեռուստացույցը աջակցում է ֆայլի կոդեկին, ձայնին և ենթագրերին, սերվերը գրեթե չի օգտագործում CPU։ Խնդիրները սկսվում են, երբ հաճախորդը չի կարող մշակել ձևաչափը, կապը պահանջում է ավելի ցածր բիթային արագություն կամ ենթագրերը պետք է «այրել» պատկերի մեջ։ Այդ դեպքում Jellyfin-ը գործարկում է FFmpeg-ը և տեսանյութը իրական ժամանակում վերակոդավորում։

4K, HEVC, HDR և HDR-ից SDR փոխակերպումը հատկապես պահանջկոտ են։ Գրաֆիկական պրոցեսոր չունեցող սովորական VPS-ը կարող է դժվարանալ նույնիսկ բազմաթիվ վիրտուալ CPU միջուկների դեպքում։ Այդ պատճառով համատեղելի ձևաչափերը և Direct Play-ը երբեմն ավելի շատ գումար են խնայում, քան հաջորդ սերվերի ծրագրին անցնելը։

Ինչպիսի սերվեր է անհրաժեշտ Jellyfin-ին

Սովորական տեղադրման համար պաշտոնական խորհուրդը մոտ 8 GB RAM է։ Գրաֆիկական ինտերֆեյս չունեցող Linux-ում փոքր սերվերը կարող է աշխատել 4 GB-ով։ Օպերացիոն համակարգի, տվյալների բազայի, պատկերների, cache-ի և ժամանակավոր ֆայլերի համար անհրաժեշտ է արագ սկավառակ․ մեդիա գրադարանը պահվում է առանձին և սովորաբար զբաղեցնում է տարածքի մեծ մասը։

ՍցենարՍկզբնական կազմաձևՄեկնաբանություն
Երաժշտություն և մեկ 1080p Direct Play հոսք2 vCPU, 4 GB RAMՑանցի և սկավառակի արագությունն ավելի կարևոր են
Փոքր ընտանեկան մեդիա գրադարան4 vCPU, 8 GB RAMՆախընտրելի են համատեղելի ձևաչափերը
Պատահական 1080p transcoding4–8 բարձր արտադրողականության vCPU կամ GPUԲեռը կախված է կոդեկից
Մի քանի 4K/HDR հոսքերԺամանակակից Intel iGPU կամ գրաֆիկական քարտՄիայն CPU-ով սովորական VPS-ը հարմար չէ

Հաշվի առեք նաև տրաֆիկը․ 20 Mbps հոսքը մեկ ժամում փոխանցում է մոտ 9 GB տվյալ։ Ամենօրյա դիտման դեպքում օգտագործումը կարող է արագ հասնել ամսական հարյուրավոր գիգաբայթերի։

Տնային սերվե՞ր, թե՞ VPS

Տնային mini PC-ն կամ NAS-ը ավելի շահավետ են բազմատերաբայթանոց հավաքածուի և կանոնավոր ապարատային transcoding-ի համար։ Կարող եք տեղադրել մեծ տարողությամբ սկավառակներ և ընտրել Intel Quick Sync-ով պրոցեսոր, սակայն հեռահար հասանելիությունը կախված կլինի էլեկտրականությունից, տնային ինտերնետ կապից և հանրային IP հասցեի առկայությունից։

VPS-ն ունի հանրային հասցե, կայուն կապ և աշխատում է շուրջօրյա։ Այն հարմար է երաժշտության, փոքր տեսագրադարանի, Direct Play-ի և տարբեր վայրերում գտնվող օգտատերերի համար։ Սահմանափակումներն են պահեստավորման արժեքը և ստանդարտ ծրագրերում GPU-ի բացակայությունը։

Կա նաև հիբրիդային տարբերակ․ ֆայլերը մնում են տանը, իսկ VPS-ը հանդես է գալիս որպես անվտանգ մուտքի կետ։ Այս կառուցվածքն օգնում է, երբ հանրային IPv4 հասցե չկա, բայց նվագարկման արագությունը դեռ սահմանափակվում է տնային կապի upload թողունակությամբ։

Jellyfin-ի տեղադրում Ubuntu-ում Docker Compose-ով

Ստորև ներկայացված կարգավորման դեպքում Jellyfin-ը և Caddy-ն աշխատում են նույն Docker ցանցում։ 8096 պորտը հասանելի չէ ինտերնետից․ Caddy-ն ընդունում է HTTPS կապերը և ավտոմատ ստանում վկայական։

Նախ դոմենի A գրառումը, օրինակ՝ media.example.com, ուղղեք սերվերի IP հասցեին։

1. Տեղադրեք Docker-ը և ստեղծեք թղթապանակները

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. Ստեղծեք /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:

:ro տարբերակը միացնում է մեդիա գրադարանը միայն կարդալու ռեժիմով և պաշտպանում սկզբնական ֆայլերը Jellyfin-ի միջոցով պատահական ջնջումից։

3. Ստեղծեք /opt/jellyfin/Caddyfile

media.example.com {
    reverse_proxy jellyfin:8096
}

Դոմենը փոխարինեք ձեր սեփականով, գործարկեք կոնտեյներները և բացեք անհրաժեշտ պորտերը․

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

Եթե SSH-ն օգտագործում է այլ պորտ, ufw enable-ը գործարկելուց առաջ թույլատրեք այն առանձին կանոնով։

Վկայականը ստանալուց հետո բացեք https://media.example.com։ Jellyfin-ի ցանցային կարգավորումներում reverse proxy-ն ավելացրեք վստահելի proxy-ների ցանկում, որպեսզի արտաքին հասանելիության սահմանափակումները ճիշտ աշխատեն։

Մեդիա գրադարանի սկզբնական կարգավորում

Կարգավորման վարպետում ընտրեք լեզուն, ստեղծեք ադմինիստրատոր և ավելացրեք գրադարանները․

  • movies — /media/movies;
  • TV shows — /media/series;
  • music — /media/music։

Ճշգրիտ նույնականացման համար օգտագործեք հստակ անուններ․

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

Դիտման համար ստեղծեք առանձին ստանդարտ պրոֆիլ և մուտքի էկրանից թաքցրեք ադմինիստրատորի հաշիվը։ Օգտատերերին տվեք միայն անհրաժեշտ գրադարանների հասանելիություն և թույլ մի տվեք ֆայլերի ջնջում, եթե դրա կարիքը չկա։

Թարմացումներ և պահուստային պատճեններ

Jellyfin-ի կազմաձևը պարունակում է օգտատերերին, կարգավորումները, տվյալների բազան և դիտման առաջընթացը։ Թարմացումից առաջ կանգնեցրեք կոնտեյները և պահպանեք 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

Արխիվը տեղափոխեք VPS-ից դուրս։ Մեդիա ֆայլերը պահուստավորեք առանձին։

Թարմացնելու համար գործարկեք․

sudo docker compose pull
sudo docker compose up -d

Մի բացեք 8096 պորտը անմիջապես ինտերնետում։ Օգտագործեք HTTPS կամ VPN, կանոնավոր տեղադրեք թարմացումները և հետևեք սկավառակի ազատ տարածքին։

Jellyfin-ը tropic.host-ի VPS-ում

Փոքր մեդիա գրադարանի համար, որը հիմնականում օգտագործում է Direct Play, կարող եք սկսել 4 GB RAM-ով Linux VPS-ից։ Մի քանի օգտատերերի, մեծ տվյալների բազայի և լրացուցիչ ծառայությունների դեպքում 8 GB-ն ավելի խելամիտ ընտրություն է։

tropic.host-ից VPS ընտրելիս առանձին գնահատեք պահեստավորման տարողությունը, ամսական տրաֆիկը և transcoding-ի անհրաժեշտությունը։ Վիրտուալ սերվերը հարմար է որպես հանրային IP հասցեով և HTTPS-ով մշտապես հասանելի վերջնակետ, բայց այն չի փոխարինում GPU-ով սերվերին։ Եթե անհրաժեշտ են ձևաչափի փոխակերպմամբ մի քանի 4K/HDR հոսքեր, ավելի հարմար է Intel iGPU-ով տնային սերվերը, dedicated server-ը կամ գրաֆիկական քարտով հատուկ ծրագիրը։

Կարող եք սկսել փոքր հավաքածուից, Jellyfin-ի վահանակում ստուգել Direct Play սեսիաների բաժինը և միայն հետո ավելացնել CPU-ն, RAM-ը կամ պահեստավորումը՝ ըստ իրական բեռի։

Ամփոփում

Jellyfin-ը ձեր սեփական հավաքածուն վերածում է անձնական հոսքային ծառայության՝ առանց պարտադիր բաժանորդագրության կամ կենտրոնական հաշվի։ Հաջող տեղադրման համար անհրաժեշտ է նախապես գնահատել պահեստավորումը, տրաֆիկը և transcoding-ի հավանականությունը։

Direct Play օգտագործող փոքր սերվերը հաճախ կարող է աշխատել 4–8 GB RAM-ով։ Կանոնավոր 4K/HDR նվագարկումը պահանջում է ապարատային տեսանյութի մշակում։ Անկախ կազմաձևից՝ արտաքին հասանելիությունը պաշտպանեք HTTPS-ով կամ VPN-ով և առանձին պահուստավորեք կարգավորումներն ու մեդիա գրադարանը։

FAQ

Jellyfin-ը լիովին անվճա՞ր է

Այո։ Սերվերը և հաճախորդները հասանելի են առանց պրեմիում ծրագրի։ Պետք է վճարեք միայն սարքավորման, VPS-ի, սկավառակների, դոմենի և տրաֆիկի համար։

Jellyfin-ը ներառո՞ւմ է պատրաստի ֆիլմեր և սերիալներ

Ոչ։ Օգտատերերն ավելացնում են իրենց սեփական մեդիա ֆայլերը։

Jellyfin-ը կարո՞ղ է աշխատել առանց գրաֆիկական քարտի VPS-ում

Այո, եթե ֆայլերի մեծ մասը նվագարկվում է Direct Play-ով։ Հաճախակի 4K և HDR transcoding-ի համար անհրաժեշտ է համապատասխան iGPU-ով կամ գրաֆիկական քարտով սերվեր։

Որքա՞ն RAM է անհրաժեշտ Jellyfin-ին

Փոքր Linux սերվերը կարող է աշխատել 4 GB RAM-ով։ Ընտանեկան մեդիա գրադարանի և մի քանի օգտատերերի համար 8 GB-ն ավելի լավ նպատակ է։

Ինչպե՞ս անվտանգ հասանելիություն ստանալ Jellyfin-ին ինտերնետով

Օգտագործեք դոմեն և HTTPS reverse proxy-ի միջոցով կամ VPN։ 8096 պորտը անմիջապես բաց մի թողեք և ստեղծեք նվազագույն թույլտվություններով առանձին օգտատերերի հաշիվներ։