Managing Media Requests Without the Chaos
Running a self-hosted media server like Jellyfin or Plex is satisfying until your household starts pinging you at all hours asking you to add new movies and TV shows. Jellyseerr solves that problem by giving everyone a proper request interface – one that tracks what’s been asked for, notifies you automatically, and connects directly to your download automation stack.

What Jellyseerr Actually Does (and What You Need First)
Jellyseerr is a fork of Overseerr, rebuilt specifically for Jellyfin users. It provides a polished, Netflix-style browsing interface where users can search for content, submit requests, and check request status – all without touching your server directly. On the backend, it connects to Radarr and Sonarr, which handle the actual downloading, so the full pipeline from user request to playback can run without you lifting a finger.
Before installing Jellyseerr, you need a working Jellyfin instance, along with Radarr for movies and Sonarr for TV series. Both should already be functional and connected to a download client like qBittorrent or Deluge. Jellyseerr does not download anything itself – it just receives requests and passes them downstream. If your Radarr and Sonarr setups are not tested and working independently, sort those out first or the Jellyseerr integration will not behave as expected.
Docker is the cleanest way to deploy Jellyseerr. The official image is maintained by the Fallenbagel team and stays well updated. You will want to decide upfront whether you are running Jellyseerr on the same machine as your other services or on a separate host, because the internal network configuration differs between those two setups. If everything is on one Docker host using a shared bridge network, your services can talk to each other by container name instead of IP address, which is much easier to maintain.
The minimum hardware requirement is negligible. Jellyseerr is a lightweight Node.js application and runs comfortably on anything from a Raspberry Pi 4 to a full server. Storage needs are minimal too – just a small config directory that holds your database and settings. Plan for a persistent volume mount so your configuration survives container restarts and updates.
Installation and Configuration Step by Step
Start with a Docker Compose file. Create a directory called jellyseerr on your host, then inside it create a docker-compose.yml file. A basic working configuration looks like this:
- image: fallenbagel/jellyseerr:latest
- container_name: jellyseerr
- environment: LOG_LEVEL=debug, TZ=America/New_York
- ports: 5055:5055
- volumes: ./config:/app/config
- restart: unless-stopped
Set your correct timezone in the environment variable, then run docker compose up -d. Once the container starts, open a browser and navigate to http://your-server-ip:5055. The setup wizard launches automatically on first run. Your first task is signing in with your Jellyfin admin account – Jellyseerr pulls user data directly from Jellyfin, so there is no separate account system to manage. Enter your Jellyfin server URL (use the internal Docker network address or local IP depending on your setup), your admin credentials, and confirm the connection. If the URL resolves correctly, Jellyseerr will import your Jellyfin libraries and user list in a few seconds.

Next comes the Radarr integration. In the Jellyseerr settings panel, navigate to Settings > Services > Radarr and add a new server. You will need your Radarr URL and API key, which you can find in Radarr under Settings > General. After entering those credentials and clicking the test button, Jellyseerr will pull your quality profiles, root folders, and tags directly from Radarr. Assign a default quality profile and root folder, then save. Repeat the same process for Sonarr under the TV section. Test both connections before moving on – if either fails, double-check that your container networking allows Jellyseerr to reach those services. A common mistake is using localhost when the services are in separate containers, which will not work. Use the container name or host IP instead.
User management is where Jellyseerr earns its place in a shared household setup. By default, anyone with a Jellyfin account can log into Jellyseerr, but their permissions are restricted. You can grant specific users the ability to auto-approve their own requests, set per-user request limits, or give trusted users full admin access. To configure this, go to Settings > Users and click on any imported account. The permission model is granular enough that you can, for example, let one person make unlimited movie requests while capping a different user at four requests per week. Notification settings live under Settings > Notifications and support email, Discord, Slack, Telegram, and several push notification services. Connect at least one so you get alerted when new requests come in or when a request fails.
Once everything is configured, walk through a full test request. Log in as a non-admin user, search for a movie that is not in your library, and submit a request. Check that it appears in Radarr within a minute or two. If auto-approve is enabled for that user, Radarr should begin searching for the file immediately. If manual approval is required, log back in as admin, approve the request from the Requests dashboard, and watch it flow through. This end-to-end test will surface any permission or networking issues before your users start hitting the system for real.
Exposing Jellyseerr and Keeping It Secure
Jellyseerr is most useful when your users can access it from outside your home network – otherwise they have to be on your local Wi-Fi to submit requests. The standard approach is to put it behind a reverse proxy like Nginx Proxy Manager or Caddy, assign it a subdomain, and enable HTTPS. If you are already running AdGuard Home as a network-wide DNS filter, you can create a local DNS rewrite entry so your subdomain resolves on the internal network without needing to hit external DNS. Pair that with a Cloudflare Tunnel or a properly firewalled port forward for external access and you have a clean, secure setup.

One thing worth getting right before you open Jellyseerr to outside users: disable new user sign-up if you do not want strangers creating accounts. By default, anyone who can reach the login page can register if they have a Jellyfin account – but if you share that Jellyfin invite link publicly, or if your Jellyfin is exposed, that creates an obvious problem. Set the Enable New Jellyfin Sign-In option to match your actual access policy. The question of who gets to request content, and how much of it, matters more than most people think when they first stand up a shared media server – and Jellyseerr’s controls are specific enough that you do not have to choose between full access and none at all.
Frequently Asked Questions
Does Jellyseerr work with Plex?
Jellyseerr is built specifically for Jellyfin. If you use Plex, Overseerr is the better choice since it was designed for that platform.
Do I need Radarr and Sonarr for Jellyseerr to work?
Yes. Jellyseerr does not download content itself – it passes approved requests to Radarr for movies and Sonarr for TV shows, which then handle the actual downloading.





