Self-host Jellyfin
Media serverFree, fully open-source media server — a no-paywall alternative to Plex with hardware transcoding included and no account required. Rougher client apps, total control.
Key facts
Run Jellyfin when you want a fully free, no-login media server for your own library — and you're comfortable being your own support when a client or codec misbehaves. If effortless remote access and polish matter more than owning every layer, Plex is the calmer pick.
What you need
- Any VPS with at least 1024 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- About an afternoon — budget time for troubleshooting
Install with Docker Compose
Save this as compose.yml and run docker compose up -d:
# Jellyfin
services:
jellyfin:
image: jellyfin/jellyfin
ports: ["8096:8096"]
volumes: ["./config:/config", "/srv/media:/media"]
# docker compose up -d → http://SERVER_IP:8096What you take on
Jellyfin gives you everything Plex gates behind a subscription, in exchange for doing a bit more yourself:
Head-to-head
More in Media server
Common questions
How much RAM does Jellyfin need?
Jellyfin runs on as little as 1 GB of RAM for direct-play streaming to a couple of devices; allocate more if you transcode several streams at once or run a large library.
Can I self-host Jellyfin with Docker?
Yes — the official docker-compose setup mounts a config volume and your media folder into the jellyfin/jellyfin image, then docker compose up -d serves the web UI on port 8096.
Is Jellyfin a good free alternative to Plex?
Jellyfin is fully open source (GPL-2.0) with no paywalled features and no required account, including hardware transcoding that Plex reserves for Plex Pass — the trade-off is rougher client apps.
Does Jellyfin require an account or subscription?
No — Jellyfin has no central account system and no premium tier; every feature, including hardware transcoding, is free and runs entirely on your own server.