“`html
How to Set Up Jellyfin on a Raspberry Pi: Complete 2026 Guide
Running your own media server at home is one of the most rewarding self-hosted projects you can tackle. Jellyfin, the free and open-source media system, pairs perfectly with a Raspberry Pi to create a low-power, always-on entertainment hub. Whether you’re looking to stream movies, music, or TV shows across your home network, this guide will walk you through everything you need to know to get Jellyfin running smoothly on your Pi.
Why Jellyfin on Raspberry Pi?
Before diving into the setup, let’s talk about why this combination makes so much sense. Jellyfin is completely free, has no ads, and doesn’t require any phone home to external servers. A Raspberry Pi consumes minimal power—perfect for a device that runs 24/7. Together, they give you a private, affordable media server that respects your privacy and doesn’t break the bank on electricity bills.
The newer Raspberry Pi 4 and Raspberry Pi 5 models handle transcoding and multiple simultaneous streams without breaking a sweat, making them excellent choices for this setup.
What You’ll Need to Get Started
Hardware Requirements
- Raspberry Pi 4 (4GB or 8GB RAM recommended) or Raspberry Pi 5
- A quality power supply rated for your Pi model
- MicroSD card (64GB or larger for OS and applications)
- External hard drive or NAS storage for your media library
- Ethernet cable (optional but recommended for stability)
- Heatsink or cooling case to prevent thermal throttling
Software Requirements
You’ll need Raspberry Pi OS (formerly Raspbian) installed on your microSD card. If you haven’t done this yet, download the Raspberry Pi Imager from the official Raspberry Pi website and create a bootable card.
Step-by-Step Installation Guide
Step 1: Update Your System
First, connect to your Raspberry Pi via SSH or use the terminal directly. Update all system packages to ensure compatibility:
sudo apt update && sudo apt upgrade -y
This process may take a few minutes, so grab a cup of coffee while it runs.
Step 2: Install Docker (Recommended Method)
The easiest way to install Jellyfin is through Docker, which keeps everything contained and easy to manage. Install Docker and Docker Compose:
curl -sSL https://get.docker.com | sh
Add your user to the Docker group to avoid needing sudo:
sudo usermod -aG docker $USER
Step 3: Create Docker Compose Configuration
Create a directory for your Jellyfin configuration and a docker-compose.yml file. This approach is cleaner than manual installation and makes updates effortless. Your compose file should include volume mounts for your media storage, configuration directory, and cache directory.
Make sure to map the correct ports (8096 is the default HTTP port) and set environment variables for timezone and UID/GID to avoid permission issues.
Step 4: Mount Your Media Storage
Connect your external hard drive or NAS to your Raspberry Pi. You can use a reliable external drive like a Western Digital Elements for straightforward local storage, or connect to a network share for more flexibility. Mount it to a consistent location:
sudo mkdir -p /mnt/media
sudo mount /dev/sda1 /mnt/media
To make this permanent, add the mount to your /etc/fstab file.
Step 5: Start the Jellyfin Container
Navigate to your docker-compose directory and launch Jellyfin:
docker-compose up -d
The container will download and start. This takes a few minutes on first run.
Configuring Jellyfin
Initial Setup Wizard
Open your web browser and visit http://your-pi-ip:8096. You’ll be greeted with a welcome wizard that guides you through language selection, creating an admin account, and adding media libraries.
Adding Your Media Libraries
Point Jellyfin to your mounted media storage. You can organize libraries by content type: Movies, TV Shows, Music, and Photos. Make sure your media files follow standard naming conventions for automatic metadata matching.
Enabling Remote Access (Optional)
If you want to access Jellyfin outside your home network, enable remote access in the server settings. You can use Jellyfin’s built-in relay service or set up a reverse proxy with your own domain.
Performance Optimization Tips
Enable hardware-accelerated transcoding if your Pi supports it. Use a quality Samsung Evo microSD card for your OS installation—it makes a noticeable difference in responsiveness. Keep your Raspberry Pi cool with adequate ventilation or a cooling case to prevent performance throttling during summer months.
Limit concurrent streams based on your network and hardware capabilities. Start with two simultaneous streams and increase if performance permits.
Troubleshooting Common Issues
If Jellyfin won’t start, check Docker logs with docker logs jellyfin. Permission denied errors typically mean your user isn’t properly added to the Docker group. Transcoding failures suggest hardware limitations—consider reducing video quality or disabling transcoding for local playback.
Conclusion
Setting up Jellyfin on a Raspberry Pi gives you complete control over your media library with zero subscription fees or privacy concerns. The initial setup takes less than an hour, and you’ll enjoy years of reliable streaming from your personal server. Whether you’re streaming to your living room TV, a phone while traveling, or sharing with family, Jellyfin on Raspberry Pi is a self-hosted solution that truly delivers. Start small, enjoy the process, and expand your media library at your own pace.
“`
Leave a Reply