Jellyfin on VPS: your own media server from $10/month

calendar_month марта 16, 2026 schedule 8 min read visibility 1 views
person
Valebyte Team
Jellyfin on VPS: your own media server from $10/month

Jellyfin on VPS: Your Own Media Server from $10/month

Want to build your own media server that's accessible from anywhere in the world, without limitations or subscriptions? Installing **Jellyfin on a VPS** is the ideal solution, allowing you to deploy a full-fledged media center with transcoding and remote access, starting from just $10 per month. With a Virtual Private Server, you gain full control over your media files and the ability to stream them to any device.

What is Jellyfin and why choose it?

Jellyfin is a powerful, completely free, and open-source media server that allows you to manage your collection of movies, TV shows, music, and photos, and then stream them to various devices: from smartphones to Smart TVs. Unlike proprietary alternatives, Jellyfin has no hidden fees, subscriptions, or requirements to register accounts with third-party services, providing you with complete privacy and control. Key advantages of Jellyfin:
  • Open Source: Full transparency and the ability for the community to improve the product.
  • Cross-platform compatibility: The server runs on Linux, Windows, macOS, and clients are available for Android, iOS, Apple TV, Android TV, Roku, Fire TV, Kodi, and many others.
  • On-the-fly transcoding: Automatic video adaptation to the client device's capabilities and network bandwidth.
  • User-friendly interface: Intuitive web interface and rich metadata for your collection.
  • Plugins and extensions: Additional features to expand capabilities.

Why is a VPS the best choice for Jellyfin?

Deploying a **selfhosted media server** on a home computer or NAS has its drawbacks: the need to keep the device constantly on, dependence on your home internet connection (especially upload speed), difficulties with remote access via dynamic IP, and port forwarding. A Virtual Private Server (VPS) solves these problems:
  • 24/7 Availability: Your media server is always online.
  • Stable high-speed internet connection: Most VPS providers offer connections from 100 Mbps to 1 Gbps, which is critically important for streaming and transcoding.
  • Static IP address: Simplifies remote access setup and domain name binding.
  • Scalability: You can easily increase VPS resources as your media collection or number of users grows.
  • Control and privacy: You fully own your server and data.
This makes **jellyfin server hosting** on a VPS an optimal solution for most users.

VPS Resource Requirements for Jellyfin: Focus on Transcoding

Choosing the right VPS for Jellyfin is a compromise between budget and your needs, especially regarding transcoding. Transcoding is the process of re-encoding a video file in real-time to match the playback device's capabilities or internet connection speed. This is the most resource-intensive task for a media server.

CPU: The Heart of Transcoding

If your VPS does not have a hardware accelerator (graphics card) for transcoding, all the load falls on the central processing unit.

  • 1-2 simultaneous 1080p streams (Software Transcoding): Requires a CPU with a PassMark score of at least 3000-4000 per stream. This corresponds to modern 2-4 core mid-range processors.
  • 3-5 simultaneous 1080p streams (Software Transcoding): This will require a powerful CPU, possibly 4-6 cores with a high clock speed, or even a transition to a **jellyfin dedicated server**.
  • 4K transcoding: Without hardware acceleration, this is an extremely resource-intensive task, requiring a very powerful CPU (PassMark of 12000-15000 per stream) and a large amount of RAM. This is unrealistic on most budget VPS.

Hardware Transcoding

This is critically important for efficient transcoding on a VPS. If your VPS provider offers plans with Intel CPUs supporting Quick Sync Video technology, or with discrete NVIDIA GPUs (which are rarer on VPS but possible on dedicated servers), you can significantly reduce CPU load.

  • Intel Quick Sync Video: Allows transcoding multiple 1080p or even 4K streams with minimal CPU load. Look for a VPS with Intel Core i3/i5/i7/Xeon E3-15xxM v5+ processors or newer ones that support this technology.
  • NVIDIA NVENC/AMD VCE: If a VPS with a discrete graphics card is available, these technologies also provide excellent hardware transcoding. This is rare on VPS, but quite realistic on a **jellyfin dedicated server**.

Random Access Memory (RAM)

  • Minimum: 2 GB RAM for a basic installation and 1-2 simultaneous streams.
  • Recommended: 4 GB RAM for more comfortable operation, especially if you plan to use plugins or have a large media library.
  • For 4K and multiple users: 8 GB RAM or more.

Storage

  • SSD: Recommended for the operating system and Jellyfin database for fast interface performance.
  • HDD/Block Storage: For storing media files. The volume depends on your collection. At Valebyte.com, you can connect additional large-capacity block storage at competitive prices.
  • Speed: For most media files, the speed of a regular HDD is sufficient, but for high-bitrate 4K, an SSD or NVMe is better.

Network Bandwidth

  • Upload speed: Minimum 50-100 Mbps for comfortable 1080p streaming. For 4K, 200 Mbps and above will be required.
  • Data transfer: Consider your monthly data transfer volume. Many VPS offer unlimited data transfer or very large quotas.

Recommended Valebyte Plans for Jellyfin

At Valebyte.com, you will find VPS perfectly suited for **jellyfin vps** hosting. We recommend the following configurations, based on your needs:
Usage Scenario Recommended VPS Parameters Estimated Cost (from) Notes
Basic (1-2 1080p streams, no hardware transcoding) 2-4 vCPU (Intel Xeon E3/E5), 4 GB RAM, 50 GB SSD, 100 Mbps connection $10-15/month Suitable for one or two users who rarely transcode.
Optimal (2-4 1080p streams, with hardware transcoding) 4 vCPU (Intel with Quick Sync), 8 GB RAM, 100 GB SSD, 200 Mbps connection $20-30/month Best option for price/performance ratio. Look for VPS with Intel Core i5/i7/Xeon E3.
Advanced (4K transcoding, multiple users) 6-8 vCPU (Intel with Quick Sync or powerful EPYC), 16+ GB RAM, 200 GB NVMe, 500+ Mbps connection $40+/month For large media libraries and many simultaneous users. You might consider a **jellyfin dedicated server**.

Note: Prices are approximate and may vary. Additional block storage for media files is paid separately.

Step-by-Step Jellyfin Installation on VPS (Ubuntu 22.04 LTS)

We assume you already have a VPS with Ubuntu 22.04 LTS and have connected to it via SSH.

1. System Update

Always start by updating packages:

sudo apt update
sudo apt upgrade -y

2. Install Necessary Dependencies

sudo apt install -y apt-transport-https ca-certificates curl gnupg2 software-properties-common

3. Add Jellyfin Repository

Import the Jellyfin GPG key and add the official repository:

curl -fsSL https://repo.jellyfin.org/jellyfin_team.gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/jellyfin.gpg
echo "deb [arch=$(dpkg --print-architecture)] https://repo.jellyfin.org/$(awk -F'=' '/^ID_LIKE/{print $NF}' /etc/os-release) $(awk -F'=' '/^VERSION_CODENAME/{print $NF}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list > /dev/null

Then update the package list again:

sudo apt update

4. Install Jellyfin

sudo apt install jellyfin -y

Jellyfin will be installed as a system service and will start automatically.

5. Configure Firewall (UFW)

Jellyfin uses several ports. Allow them in the firewall:

sudo ufw allow 8096/tcp  # Main HTTP port for Jellyfin
sudo ufw allow 8920/tcp  # Main HTTPS port for Jellyfin
sudo ufw allow 1900/udp  # For UPnP/DLNA discovery
sudo ufw allow 7359/udp  # For GDM (General Discovery Mechanism) discovery
sudo ufw enable
sudo ufw status

Make sure the SSH port (usually 22) is also allowed before enabling UFW.

6. Access Jellyfin Web Interface

Open your browser and navigate to: http://YOUR_VPS_IP:8096. You will see the initial Jellyfin setup screen. Follow the instructions to create an administrator, add media libraries, and configure the language.

Optimizing Jellyfin for Hardware Transcoding

If your VPS has an Intel processor with Quick Sync Video, be sure to configure hardware transcoding. This will significantly reduce CPU load.

1. Install Intel Quick Sync Drivers

For Ubuntu, you will need to install VA-API driver packages:

sudo apt install -y intel-media-va-driver-non-free vainfo
sudo usermod -aG render jellyfin

Restart Jellyfin:

sudo systemctl restart jellyfin

Verify that VA-API is working by running vainfo. You should see a list of supported formats.

Then, in the Jellyfin web interface, go to Dashboard > Playback > Transcoding and select Intel Quick Sync (QSV) as the hardware acceleration.

2. NVIDIA NVENC Configuration (for Dedicated Servers)

If you are using a **jellyfin dedicated server** with a discrete NVIDIA GPU, the process is more complex and involves installing proprietary NVIDIA drivers and Jellyfin with NVENC support. Detailed instructions can be found on the official Jellyfin website.

Configure Remote Access and Security

To make your **own media server** accessible via a nice domain name and securely, it is recommended to use a reverse proxy with an SSL certificate.

1. Domain Name Binding

Create an A-record with your domain registrar, pointing to your VPS's IP address (e.g., media.yourdomain.com).

2. Install Nginx and Certbot

Nginx will act as a reverse proxy, and Certbot from Let's Encrypt will issue a free SSL certificate.

sudo apt install -y nginx certbot python3-certbot-nginx

3. Configure Nginx

Create a new configuration file for your domain:

sudo nano /etc/nginx/sites-available/jellyfin.conf

Paste the following code, replacing media.yourdomain.com with your domain:

server {
    listen 80;
    server_name media.yourdomain.com;

    location / {
        # Proxy Jellyfin
        proxy_pass http://localhost:8096;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Port $server_port;
        proxy_buffering off;
        proxy_request_buffering off;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;

        # WebSocket support
        proxy_read_timeout 36000s;
    }
}

Save the file (Ctrl+X, Y, Enter). Activate the configuration and check the syntax:

sudo ln -s /etc/nginx/sites-available/jellyfin.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

4. Obtain SSL Certificate with Certbot

Now obtain an SSL certificate, which will automatically configure Nginx for HTTPS:

sudo certbot --nginx -d media.yourdomain.com

Follow Certbot's instructions. It will ask if you want to force HTTP to HTTPS redirection (recommended).

Once completed, you will be able to access Jellyfin at https://media.yourdomain.com.

Looking for a reliable server for your projects?

Valebyte offers VPS and dedicated servers with guaranteed resources and fast activation.

View offers →

5. Additional SSH Security

  • Disable password login and use SSH keys.
  • Disable root login.
  • Change the default SSH port (22) to another one.

Conclusion

Deploying **Jellyfin on a VPS** is an excellent way to get a powerful, private, and fully controlled media server, accessible from anywhere in the world. Thanks to the flexibility of VPS hosting from Valebyte.com, you can choose the ideal configuration that meets your media transcoding and storage needs, starting with very budget-friendly options. By following our guide, you can set up your **selfhosted media server** quickly and securely, enjoying your media library without limitations.

Ready to choose a server?

Compare VPS and dedicated servers from trusted providers at Valebyte.

Get started now →

Share this post: