Interface reference
A separate public deployment screenshot is not used here because it would be misleading or expose account details. The official project page below is the authoritative visual reference.
Open Jellyfin web demo →What Jellyfin is
Jellyfin is a free, open-source media server that lets you stream your own music, films, TV shows and photos to any device on your network or remotely. It is a fork of Emby, created after Emby moved to a closed-source model. Unlike Plex, Jellyfin has no account requirements, no telemetry, no premium tier and no external authentication dependency — your media stays yours, served from your own hardware.
Jellyfin supports hardware-accelerated transcoding (VAAPI, QSV, NVENC), automatic metadata fetching, subtitle downloads, user profiles with parental controls, and clients on Android, iOS, web, Roku, Fire TV, Kodi and more.
Why I run it
I run Jellyfin because I want full control over my media library without relying on a third-party service that can change its terms, inject ads or require an internet connection to access my own files. It runs on my Docker infrastructure alongside my other self-hosted services, accessible locally and remotely through Tailscale — never exposed directly to the internet.
It also lets me set up separate user profiles for family members with appropriate content restrictions, without needing to pay for a premium plan or create external accounts.
Docker Compose
A representative Compose file for deploying Jellyfin. Adjust the volume paths to match your media and config locations.
services:
jellyfin:
image: jellyfin/jellyfin:latest
container_name: jellyfin
restart: unless-stopped
ports:
- "8096:8096"
volumes:
- ./config:/config
- ./cache:/cache
- /path/to/media:/media:ro
environment:
- TZ=Europe/London
devices:
- /dev/dri:/dev/dri # hardware transcodingWhat this gives you
A private, ad-free media server that streams to any device on your network, with no external dependencies, no account requirements and no risk of a vendor deciding to monetise your library access. Combined with Tailscale for remote access, it works anywhere without opening ports or configuring reverse proxies.
