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-ը․ հիմնական տարբերությունները
Երկու լուծումներն էլ տեղական հավաքածուն վերածում են մեդիա ծառայության, սակայն օգտագործում են տարբեր մոդելներ։
| Պարամետր | Jellyfin | Plex |
|---|---|---|
| Ելակետային կոդ | Բաց կոդով | Սեփականատիրական |
| Պրեմիում հնարավորություններ | Սերվերը և պաշտոնական հաճախորդները վճարովի մակարդակ չունեն | Որոշ հնարավորություններ կախված են բաժանորդագրության ծրագրից |
| Կենտրոնական հաշիվ | Պարտադիր չէ | Օգտագործում է մատակարարի էկոհամակարգը |
| Հեռահար հասանելիություն | Սեփականատերը կարգավորում է դոմենը, 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 transcoding | 4–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/jellyfin2. Ստեղծեք /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 պորտը անմիջապես բաց մի թողեք և ստեղծեք նվազագույն թույլտվություններով առանձին օգտատերերի հաշիվներ։
