Jellyfin บน VPS: ติดตั้งเซิร์ฟเวอร์สื่อของคุณเอง

2 อ่านขั้นต่ำแล้ว
Tropic
Jellyfin บน VPS: ติดตั้งเซิร์ฟเวอร์สื่อของคุณเอง

Language: th

Jellyfin บน VPS: สร้างเซิร์ฟเวอร์สื่อของคุณเอง

โฟลเดอร์ที่เต็มไปด้วยวิดีโอมักไม่ใช่คลังสื่อที่ใช้งานสะดวก ชื่อไฟล์ไม่เป็นรูปแบบเดียวกัน ไฟล์คำบรรยายแยกอยู่ต่างหาก และต้องค้นหาตอนที่ต้องการด้วยตนเอง Jellyfin เปลี่ยนคลังลักษณะนี้ให้เป็นบริการสตรีมมิงส่วนตัวที่มีโปสเตอร์ คำอธิบาย โปรไฟล์ผู้ใช้ และการจำตำแหน่งการเล่น

อย่างไรก็ตาม Jellyfin ไม่ได้ขายการสมัครสมาชิกและไม่มีแค็ตตาล็อกเนื้อหาสำเร็จรูป แต่ทำงานกับไฟล์ของคุณเองและรันได้บนคอมพิวเตอร์ที่บ้าน NAS หรือ VPS ด้านล่างเราจะดูความสามารถ ข้อกำหนดเซิร์ฟเวอร์ และวิธีติดตั้งบน Ubuntu พร้อมโดเมนและ HTTPS

Jellyfin คืออะไร และทำไมคุณอาจต้องใช้

Jellyfin เป็นเซิร์ฟเวอร์สื่อฟรีและโอเพนซอร์ส เซิร์ฟเวอร์จะทำดัชนีภาพยนตร์ ซีรีส์ เพลง รูปภาพ และเนื้อหาอื่น ๆ ส่วนแอปไคลเอนต์จะเล่นเนื้อหาเหล่านั้นบนโทรศัพท์ คอมพิวเตอร์ หรือโทรทัศน์

หลังสแกนโฟลเดอร์ Jellyfin จะดาวน์โหลดโปสเตอร์และคำอธิบาย จัดซีรีส์ตามซีซัน จำตำแหน่งการเล่น และแสดงส่วน “Continue Watching” คุณสร้างโปรไฟล์ภายในแยกสำหรับสมาชิกครอบครัว จำกัดการเข้าถึงไลบรารี และตั้งค่าการควบคุมโดยผู้ปกครองได้ Quick Connect ช่วยให้ผู้ใช้ลงชื่อเข้าใช้บนโทรทัศน์ด้วยรหัสสั้น ๆ แทนการพิมพ์รหัสผ่านยาว

มีไคลเอนต์สำหรับ Android, iOS, Android TV, Roku, webOS, Tizen, Xbox และคอมพิวเตอร์เดสก์ท็อป Jellyfin ยังมีอินเทอร์เฟซเว็บและการผสานรวมกับ Kodi

Jellyfin ยังรองรับเพลง IPTV เครื่องรับสัญญาณทีวี และการบันทึกรายการสด SyncPlay ซิงโครไนซ์การเล่นสำหรับผู้ใช้หลายคน ส่วนปลั๊กอินช่วยเพิ่มคำบรรยาย แหล่งเมทาดาทาใหม่ และการผสานรวมต่าง ๆ

Jellyfin ไม่ได้ค้นหาหรือดาวน์โหลดภาพยนตร์ด้วยตัวเอง แต่จัดระเบียบและสตรีมเฉพาะเนื้อหาที่เจ้าของเซิร์ฟเวอร์มีอยู่แล้ว

Jellyfin กับ Plex: ความแตกต่างหลัก

ทั้งสองโซลูชันเปลี่ยนคอลเลกชันในเครื่องให้เป็นบริการสื่อ แต่ใช้แนวทางต่างกัน

พารามิเตอร์JellyfinPlex
ซอร์สโค้ดโอเพนซอร์สเป็นกรรมสิทธิ์
ฟีเจอร์พรีเมียมเซิร์ฟเวอร์และไคลเอนต์ทางการไม่มีระดับเสียเงินบางฟีเจอร์ขึ้นอยู่กับแผนการสมัครสมาชิก
บัญชีกลางไม่จำเป็นใช้ระบบนิเวศของผู้ให้บริการ
การเข้าถึงระยะไกลเจ้าของตั้งค่าโดเมน รีเวิร์สพร็อกซี หรือ VPNมีกลไกสำเร็จรูปให้มากกว่า
การควบคุมข้อมูลสูงสุดผู้ให้บริการควบคุมโครงสร้างพื้นฐานบางส่วน

ผู้คนเลือก Jellyfin เพราะความเป็นอิสระ ความเป็นส่วนตัว และไม่มีค่าสมาชิก Plex อาจสะดวกกว่าเมื่อสิ่งสำคัญที่สุดคือการตั้งค่าที่ง่ายที่สุดและแอปที่ขัดเกลาอย่างสม่ำเสมอบนอุปกรณ์ทุกชนิด

Direct Play หรือการทรานส์โค้ด: อะไรทำให้เซิร์ฟเวอร์ทำงานหนัก

ประสิทธิภาพของ Jellyfin ขึ้นอยู่กับวิธีเล่นมากกว่าขนาดของไลบรารี

โหมดสิ่งที่เกิดขึ้นโหลด
Direct Playเซิร์ฟเวอร์ส่งไฟล์ต้นฉบับต่ำ
Direct Streamเปลี่ยนคอนเทนเนอร์หรือแทร็กใดแทร็กหนึ่งต่ำหรือปานกลาง
Transcodingเปลี่ยนโคเดก ความละเอียด หรือบิตเรตแบบทันทีสูง

หากโทรทัศน์รองรับโคเดก เสียง และคำบรรยายของไฟล์ เซิร์ฟเวอร์แทบไม่ใช้ CPU ปัญหาเริ่มเกิดเมื่อไคลเอนต์รองรับรูปแบบไม่ได้ การเชื่อมต่อต้องใช้บิตเรตต่ำลง หรือจำเป็นต้องฝังคำบรรยายลงในภาพ Jellyfin จะเปิด FFmpeg และทรานส์โค้ดวิดีโอแบบเรียลไทม์

4K, HEVC, HDR และการแปลง HDR เป็น SDR ใช้ทรัพยากรมากเป็นพิเศษ VPS ทั่วไปที่ไม่มีตัวประมวลผลกราฟิกอาจทำงานไม่ไหวแม้มีคอร์ CPU เสมือนหลายคอร์ ดังนั้นรูปแบบที่เข้ากันได้และ Direct Play อาจช่วยประหยัดเงินได้มากกว่าการย้ายไปใช้แผนเซิร์ฟเวอร์ถัดไป

Jellyfin ต้องใช้เซิร์ฟเวอร์แบบใด

คำแนะนำอย่างเป็นทางการสำหรับการติดตั้งทั่วไปคือ RAM ประมาณ 8 GB บน Linux ที่ไม่มีอินเทอร์เฟซกราฟิก เซิร์ฟเวอร์ขนาดเล็กสามารถทำงานด้วย RAM 4 GB ได้ ควรมีไดรฟ์ที่เร็วสำหรับระบบปฏิบัติการ ฐานข้อมูล รูปภาพ แคช และไฟล์ชั่วคราว ส่วนไลบรารีสื่อจะเก็บแยกต่างหากและมักใช้พื้นที่ส่วนใหญ่

สถานการณ์การตั้งค่าเริ่มต้นหมายเหตุ
เพลงและสตรีม Direct Play 1080p หนึ่งรายการ2 vCPU, RAM 4 GBเครือข่ายและความเร็วดิสก์สำคัญกว่า
ไลบรารีสื่อสำหรับครอบครัวขนาดเล็ก4 vCPU, RAM 8 GBควรใช้รูปแบบที่เข้ากันได้
ทรานส์โค้ด 1080p เป็นครั้งคราว4–8 vCPU ประสิทธิภาพสูงหรือ GPUโหลดขึ้นอยู่กับโคเดก
สตรีม 4K/HDR หลายรายการIntel iGPU รุ่นใหม่หรือการ์ดกราฟิกVPS ที่ใช้ CPU อย่างเดียวไม่เหมาะสม

อย่าลืมคำนึงถึงทราฟฟิกด้วย: สตรีม 20 Mbps จะถ่ายโอนข้อมูลประมาณ 9 GB ต่อชั่วโมง หากรับชมทุกวัน การใช้งานอาจเพิ่มถึงหลายร้อยกิกะไบต์ต่อเดือนได้อย่างรวดเร็ว

เซิร์ฟเวอร์ที่บ้านหรือ VPS

มินิพีซีหรือ NAS ที่บ้านคุ้มค่ากว่าสำหรับคอลเลกชันขนาดหลายเทราไบต์และการทรานส์โค้ดด้วยฮาร์ดแวร์เป็นประจำ คุณติดตั้งไดรฟ์ความจุสูงและเลือกโปรเซสเซอร์ที่มี Intel Quick Sync ได้ แต่การเข้าถึงระยะไกลขึ้นอยู่กับไฟฟ้า การเชื่อมต่ออินเทอร์เน็ตบ้าน และการมี IP สาธารณะ

VPS มีที่อยู่สาธารณะ การเชื่อมต่อเสถียร และทำงานตลอดเวลา จึงเหมาะกับเพลง ไลบรารีวิดีโอขนาดเล็ก Direct Play และผู้ใช้ที่อยู่ต่างสถานที่ ข้อจำกัดคือค่าใช้จ่ายด้านพื้นที่จัดเก็บและแผนมาตรฐานที่ไม่มี GPU

ยังมีตัวเลือกแบบไฮบริด: ไฟล์อยู่ที่บ้าน ส่วน VPS ทำหน้าที่เป็นทางเข้าที่ปลอดภัย วิธีนี้ช่วยได้เมื่อไม่มีที่อยู่ IPv4 สาธารณะ แต่ความเร็วการเล่นยังจำกัดด้วยแบนด์วิดท์อัปโหลดของการเชื่อมต่อบ้าน

ติดตั้ง 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 ให้เพิ่มรีเวิร์สพร็อกซีในรายการพร็อกซีที่เชื่อถือได้ เพื่อให้ข้อจำกัดการเข้าถึงจากภายนอกทำงานได้อย่างถูกต้อง

ตั้งค่าไลบรารีสื่อเริ่มต้น

ในวิซาร์ดการตั้งค่า ให้เลือกภาษา สร้างผู้ดูแลระบบ และเพิ่มไลบรารีดังนี้:

  • ภาพยนตร์ — /media/movies;
  • ซีรีส์ — /media/series;
  • เพลง — /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 บน VPS จาก tropic.host

สำหรับไลบรารีสื่อขนาดเล็กที่ใช้ Direct Play เป็นหลัก คุณสามารถเริ่มด้วย Linux VPS ที่มี RAM 4 GB สำหรับผู้ใช้หลายคน ฐานข้อมูลขนาดใหญ่ และบริการเพิ่มเติม RAM 8 GB จะเหมาะสมกว่า

เมื่อเลือก VPS จาก tropic.host ให้ประเมินความจุพื้นที่ ทราฟฟิกรายเดือน และความจำเป็นในการทรานส์โค้ดแยกจากกัน เซิร์ฟเวอร์เสมือนเหมาะเป็นปลายทางที่มี IP สาธารณะและ HTTPS พร้อมใช้งานตลอดเวลา แต่ไม่ใช่สิ่งทดแทนเซิร์ฟเวอร์ที่มี GPU หากต้องการสตรีม 4K/HDR หลายรายการพร้อมแปลงรูปแบบ เซิร์ฟเวอร์ที่บ้านที่มี Intel iGPU เซิร์ฟเวอร์เฉพาะ หรือแผนเฉพาะที่มีการ์ดกราฟิกจะเหมาะกว่า

คุณสามารถเริ่มจากคอลเลกชันขนาดเล็ก ตรวจสอบสัดส่วนเซสชัน Direct Play ในแดชบอร์ด Jellyfin แล้วค่อยเพิ่ม CPU, RAM หรือพื้นที่จัดเก็บตามโหลดจริง

สรุป

Jellyfin เปลี่ยนคอลเลกชันของคุณให้เป็นบริการสตรีมมิงส่วนตัวโดยไม่ต้องสมัครสมาชิกและไม่มีบัญชีกลางที่บังคับใช้ การติดตั้งที่สำเร็จต้องประเมินพื้นที่จัดเก็บ ทราฟฟิก และโอกาสที่จะเกิดทรานส์โค้ดล่วงหน้า

เซิร์ฟเวอร์ขนาดเล็กที่ใช้ Direct Play มักทำงานได้ด้วย RAM 4–8 GB การเล่น 4K/HDR เป็นประจำต้องใช้การประมวลผลวิดีโอด้วยฮาร์ดแวร์ ไม่ว่าจะใช้การตั้งค่าใด ให้ป้องกันการเข้าถึงจากภายนอกด้วย HTTPS หรือ VPN และสำรองการตั้งค่ากับไลบรารีสื่อแยกจากกัน

FAQ

Jellyfin ฟรีทั้งหมดหรือไม่?

ใช่ เซิร์ฟเวอร์และไคลเอนต์ใช้งานได้โดยไม่มีแผนพรีเมียม คุณจ่ายเฉพาะฮาร์ดแวร์ VPS ไดรฟ์ ชื่อโดเมน และทราฟฟิกเท่านั้น

Jellyfin มีภาพยนตร์และซีรีส์พร้อมรับชมหรือไม่?

ไม่มี ผู้ใช้ต้องเพิ่มไฟล์สื่อของตนเอง

Jellyfin รันบน VPS ที่ไม่มีการ์ดกราฟิกได้หรือไม่?

ได้ หากไฟล์ส่วนใหญ่เล่นผ่าน Direct Play การทรานส์โค้ด 4K และ HDR เป็นประจำต้องใช้เซิร์ฟเวอร์ที่มี iGPU หรือการ์ดกราฟิกที่เหมาะสม

Jellyfin ต้องใช้ RAM เท่าไร?

เซิร์ฟเวอร์ Linux ขนาดเล็กสามารถทำงานด้วย RAM 4 GB สำหรับไลบรารีสื่อครอบครัวและผู้ใช้หลายคน ควรตั้งเป้าไว้ที่ 8 GB

จะเข้าถึง Jellyfin ผ่านอินเทอร์เน็ตอย่างปลอดภัยได้อย่างไร?

ใช้โดเมนและ HTTPS ผ่านรีเวิร์สพร็อกซี หรือใช้ VPN อย่าเปิดพอร์ต 8096 โดยตรง และสร้างบัญชีผู้ใช้แยกที่มีสิทธิ์เท่าที่จำเป็น