
Jellyfin là phần mềm máy chủ media mã nguồn mở để tự tổ chức và phát nội dung của bạn như phim, chương trình truyền hình, nhạc hoặc ảnh từ máy tính, NAS hay server riêng. Bạn cài Jellyfin Server ở một nơi, thêm các thư mục media, sau đó truy cập bằng trình duyệt hoặc ứng dụng client trên thiết bị trong mạng.
Bài này tập trung vào Jellyfin Server trên Windows, Ubuntu/Debian và Docker. Jellyfin Server khác với client: server quản lý thư viện, người dùng và việc phát nội dung; client là nơi bạn mở thư viện để xem/nghe.
Jellyfin là gì?
Jellyfin là dự án phần mềm tự host. Website Jellyfin cung cấp binary và container image chính thức cho nhiều nền tảng. Khi tự host, bạn chủ động chọn nơi đặt file media, tài khoản và cách truy cập; đổi lại bạn chịu trách nhiệm cài đặt, phân quyền thư mục, cập nhật và bảo vệ server.
Chuẩn bị trước khi cài
- Chọn máy chạy liên tục hoặc máy/NAS chỉ bật khi cần.
- Sắp xếp media theo thư mục rõ ràng, ví dụ Phim, TV, Nhạc.
- Ghi lại đường dẫn thực tế của media; với Docker, đường dẫn trên host phải được mount vào container.
- Chỉ mở truy cập từ xa khi hiểu rõ reverse proxy, HTTPS, firewall và tài khoản người dùng. Không nên bật UPnP/automatic port mapping nếu không cần.
Cài Jellyfin trên Windows
- Vào trang Downloads chính thức của Jellyfin và chọn gói Windows Server.
- Chạy installer, hoàn tất các bước cài đặt.
- Sau khi server khởi động, mở trình duyệt trên máy cài:
http://localhost:8096. - Từ thiết bị khác trong cùng mạng, dùng dạng
http://IP-cua-server:8096, ví dụhttp://192.168.1.20:8096. - Làm theo setup wizard để tạo tài khoản quản trị và thêm thư viện.
Nếu không vào được từ LAN, hãy kiểm tra Jellyfin đang chạy, IP của server có đúng không, firewall Windows và việc thiết bị có cùng mạng nội bộ hay không.
Cài Jellyfin trên Ubuntu/Debian
Jellyfin cung cấp script chính thức để cài repository và Jellyfin trên Debian, Ubuntu cùng các bản dẫn xuất. Tài liệu khuyên tải, kiểm tra checksum rồi xem script trước khi chạy.
curl -s https://repo.jellyfin.org/install-debuntu.sh -O && \
curl -s https://repo.jellyfin.org/install-debuntu.sh.sha256sum -O && \
sha256sum -c install-debuntu.sh.sha256sum
less install-debuntu.sh
sudo bash install-debuntu.shSau khi cài, mở http://localhost:8096 trên server hoặc http://IP-cua-server:8096 từ máy cùng LAN. Nếu không thấy thư mục media trong wizard, kiểm tra quyền đọc của tiến trình Jellyfin đối với thư mục đó. Không dùng chmod 777 như một cách chữa cháy; hãy cấp đúng quyền sở hữu/nhóm cần thiết cho thư mục media.
Cài Jellyfin bằng Docker
Jellyfin phát hành container image chính thức jellyfin/jellyfin trên Docker Hub và GitHub Container Registry. Ví dụ dưới đây dùng Docker Compose, tách riêng config, cache và media. Thay các đường dẫn mẫu bằng đường dẫn thật của bạn.
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
user: "1000:1000"
ports:
- "8096:8096/tcp"
- "7359:7359/udp"
volumes:
- /srv/jellyfin/config:/config
- /srv/jellyfin/cache:/cache
- type: bind
source: /srv/media
target: /media
read_only: true
restart: unless-stopped- Lưu file là
compose.yamltrong một thư mục riêng. - Đổi
1000:1000thành UID:GID có quyền đọc thư mục media trên host, hoặc bỏ dòng này nếu bạn hiểu mô hình quyền mặc định của môi trường Docker. - Đổi
/srv/jellyfin/config,/srv/jellyfin/cachevà/srv/mediacho đúng máy chủ của bạn. - Khởi động:
docker compose up -d. - Mở
http://IP-cua-server:8096để chạy setup wizard.
Mount media ở chế độ read-only là lựa chọn tốt khi Jellyfin chỉ cần đọc file. Đừng xóa container hoặc thư mục config nếu chưa sao lưu: config chứa thiết lập và dữ liệu server. Khi cập nhật image, đọc release notes và sao lưu config trước.
Thiết lập lần đầu trong Setup Wizard
1. Chọn ngôn ngữ và tạo admin
Chọn ngôn ngữ cho client đang dùng, sau đó tạo tài khoản quản trị với mật khẩu mạnh. Có thể thêm user/admin khác sau khi wizard hoàn thành.
2. Thêm media library
Nhấn dấu cộng để thêm library, chọn loại nội dung, đặt tên hiển thị và chọn thư mục. Bạn có thể bỏ qua để thêm sau. Nếu thư mục không xuất hiện, thường là do đường dẫn mount sai trong Docker hoặc tài khoản chạy Jellyfin không có quyền đọc trên Windows/Linux.
3. Chọn metadata language
Chọn ngôn ngữ và vùng ưu tiên cho metadata ở cấp server. Tùy chọn này có thể tinh chỉnh cho từng library sau đó.
4. Cài đặt mạng
Với đa số trường hợp gia đình, chỉ dùng trong LAN và tắt “Allow remote access to this server”. Jellyfin cũng khuyến nghị tắt automatic port mapping vì nó dựa vào UPnP, một cơ chế thường gắn với rủi ro bảo mật. Khi cần xem từ Internet, hãy đọc Networking Guide của Jellyfin và triển khai HTTPS/reverse proxy hoặc phương án truy cập riêng phù hợp, thay vì mở port vội vàng.
Cách sử dụng Jellyfin cơ bản
- Đăng nhập bằng tài khoản đã tạo.
- Mở library Phim, TV, Nhạc hoặc thư viện bạn đã thêm.
- Chọn nội dung để phát trên web client; nếu cần, cài client Jellyfin tương ứng thiết bị từ trang Clients chính thức.
- Vào Dashboard khi đăng nhập admin để quản lý user, library, metadata và các thiết lập server.
- Khi thêm file mới vào thư mục media, kiểm tra lại library/quét thư viện trong Dashboard nếu nội dung chưa xuất hiện.
Windows, Ubuntu hay Docker: nên chọn cách nào?
- Windows: phù hợp khi máy PC Windows là nơi đặt file media và bạn muốn cài bằng installer, ít dùng terminal.
- Ubuntu/Debian: phù hợp cho home server/VPS/NAS chạy Linux và muốn dùng package/repository của Jellyfin.
- Docker: phù hợp khi bạn đã quen container, muốn tách config/cache/media rõ ràng và dễ tái triển khai. Đổi lại phải hiểu UID:GID, mount, backup và network của Docker.
Lưu ý về transcoding và phần cứng
Khả năng phát trực tiếp hay phải chuyển mã phụ thuộc định dạng file, thiết bị client, phụ đề và cấu hình server. Jellyfin có tài liệu riêng về transcoding và hardware acceleration; không nên mặc định mọi máy đều phát 4K hay tăng tốc phần cứng chỉ bằng một cài đặt. Hãy bắt đầu bằng file và client thực tế của bạn, theo dõi hoạt động server, rồi đọc Hardware Selection Guide/Transcoding docs trước khi thay đổi phần cứng hoặc cấp thiết bị GPU vào container.
Kết luận
Jellyfin phù hợp nếu bạn muốn tự host thư viện media và kiểm soát nơi dữ liệu nằm. Bắt đầu đơn giản: cài server, thêm một thư mục media nhỏ, tạo admin, dùng trong LAN qua cổng 8096 và kiểm tra phát trên thiết bị thật. Sau khi ổn định mới cân nhắc truy cập từ xa, transcoding hoặc tối ưu phần cứng.
Nguồn chính thức
- Jellyfin
- Installation overview
- Install on Windows
- Install on Debian/Ubuntu
- Official container documentation
- Setup Wizard Walkthrough
