Skip to Content
Jellyseerr

Jellyseerr (Seerr)

Request management and media discovery for Jellyfin, Emby, and Plex

Overview

Jellyseerr (Seerr) is a free and open-source request management and media discovery tool built to work with your existing Jellyfin, Emby, or Plex media server. It provides an intuitive interface for users to discover and request movies and TV shows, which are then automatically sent to Sonarr and Radarr for download. With user quota management, approval workflows, and extensive notification support (Discord, Slack, email, Telegram), Seerr streamlines content requests for shared media servers.

QuickBox Pro installs Jellyseerr per user from the official seerr-team/seerr GitHub repository, building with Node.js 22.11.0 and pnpm. The installer creates isolated virtual environments at /opt/username/lib/nodejs/Jellyseerr/.venv, configures systemd service management, and sets up nginx reverse proxy access at /username/jellyseerr.

Deprecated -- Use Seerr
Important

Jellyseerr has been unified into Seerr, the canonical media request manager for Plex, Jellyfin, and Emby. New installations should use qb install seerr -u username. Existing Jellyseerr installations are automatically migrated when you run qb update jellyseerr -u username. This page is retained for reference only.

Jellyseerr requests and the dashboard Media Requests page
Note

The dashboard’s Media Requests page reads Seerr and Ombi instances. A Jellyseerr install does not appear there on its own — migrate it to Seerr (qb install seerr -u username --migrate --from jellyseerr, or just qb update jellyseerr -u username) and that user’s requests then show up as a Seerr instance.

Key features

Multi-Server Support

Native integration with Jellyfin, Emby, and Plex with automatic library scanning

Sonarr/Radarr Integration

Automatic request forwarding to media management tools with quality profile selection

User Management

Request quotas, approval workflows, and granular permissions per user

Rich Notifications

Discord, Slack, email, Telegram, and Pushover notifications for requests and approvals

Media Discovery

Browse popular, trending, and upcoming content from TMDb with rich metadata

Per-User Service

systemd unit jellyseerr@username with isolated Node.js venv and port allocation

Reverse Proxy Ready

nginx maps /username/jellyseerr to 127.0.0.1:5055 with automatic path rewriting

TLS Domain Support

Optional domain setup via qb install lecert --jellyseerr -d domain with SSL certificates

When to use it

Prerequisites

  • Need a per-user media request app for Plex, Jellyfin, or Emby
  • Want Seerr served under the QuickBox user path instead of a separate vhost
  • Require user quota management and approval workflows for content requests
  • Need automated notifications for request status updates across multiple channels

What you get

  • Install via qb install jellyseerr -u username to clone seerr-team/seerr and build with pnpm
  • Default nginx reverse proxy publishes https://host/username/jellyseerr to port 5055
  • Optional domain support via qb install lecert --jellyseerr -d domain -u username with SSL
  • Per-user systemd service jellyseerr@username with Node.js 22.11.0 venv and auto-start on boot

Installation

Install Seerr instead
Important

For new servers, install Seerr — the unified replacement — rather than Jellyseerr. The instructions below are retained for existing installations and for reference.

Install from the Dashboard

Open App Dashboard → Package Management (/dashboard?mode=packages), find Jellyseerr in the catalog, and click Install. The dashboard streams the install log live and the app appears in your Application Control panel when it finishes. Reinstall, Update, and Remove are available from the same panel — running Update automatically migrates the install to Seerr.

What you see is gated by your account: admins manage any user’s apps; regular users manage their own. See App Management for the full flow.

Install from the CLI (automation)

bash
qb install jellyseerr -u username
qb install jellyseerr -u username -d 'domain'   # with domain + TLS
qb reinstall jellyseerr -u username
qb update jellyseerr -u username                # auto-migrates to Seerr
qb remove jellyseerr -u username

Full flag reference: CLI Reference. For SSL on an existing install, use the unified Seerr target: qb install lecert --seerr -d domain -u username.

Initial Configuration

First-time setup, media-server connection, Sonarr/Radarr wiring, and notifications are identical to Seerr — follow Initial Configuration on the Seerr page. The interface and steps are the same; only the URL path (/username/jellyseerr) and the service name (jellyseerr@username) differ on an existing Jellyseerr install.

Access and authentication

URL / route

  • Default: http://host:port - https://host/username/jellyseerr (served by /etc/nginx/software/username.jellyseerr.conf → 127.0.0.1:5055)
  • With domain: https://domain/ (served by /etc/nginx/sites-enabled/username.jellyseerr.conf when installed with --jellyseerr -d domain from lecert, or qb install jellyseerr -u username -d domain)
Dashboard Quick Access
Tip

Find Seerr on your QuickBox App Dashboard (the default control view): expand its row for port and service status, with a direct Open button.

Security notes

  • The service runs as username via jellyseerr@username.service and reads environment settings from /opt/username/Jellyseerr/env.conf
  • TLS is provisioned when lecert installs certificates into /etc/nginx/ssl/domain/ and binds them in the generated vhost
  • First user to sign in becomes the administrator with full permissions
  • Additional users inherit permissions based on their media server role

Configuration and files

Path
Description
/opt/username
Jellyseerr/
Application root
env.conf
Holds PORT=5055 for this user
config/
Persistent app data
settings.json
Primary application settings
db/
SQLite database storage
dist/
Built application served by Node
lib/
Isolated runtime environments
nodejs/
Jellyseerr/
.venv/
Node.js 22.11.0 environment
python/
Jellyseerr/
.venv/
Helper Python venv
Path
Description
/home/username/.config
Jellyseerr/
Symlink target for user config
Path
Description
/etc/nginx
software/
username.jellyseerr.conf
Default reverse proxy for /username/jellyseerr
sites-enabled/
username.jellyseerr.conf
Domain vhost created by lecert
Path
Description
/etc/systemd/system
jellyseerr@username.service
Per-user service unit

Common tasks

Service Management

Seerr runs as a per-user systemd service jellyseerr@username:

bash
# Start/stop/restart service
systemctl start jellyseerr@username
systemctl stop jellyseerr@username
systemctl restart jellyseerr@username
 
# Check service status
systemctl status jellyseerr@username
 
# View live logs
journalctl -u jellyseerr@username -f
 
# Enable/disable auto-start on boot
systemctl enable jellyseerr@username
systemctl disable jellyseerr@username

Application Management

Use QuickBox CLI for application updates and maintenance:

bash
# Update to latest release
qb update jellyseerr -u username
 
# Reinstall (preserves database)
qb reinstall jellyseerr -u username
 
# Remove application
qb remove jellyseerr -u username
 
# View help
qb help jellyseerr

nginx Management

Reload nginx after configuration changes:

bash
# Test configuration
sudo nginx -t
 
# Reload nginx
sudo systemctl reload nginx

FAQ

Best practices

The operational best practices are the same as Seerr — see Best practices on the Seerr page. The most important one for a deprecated Jellyseerr install: migrate to Seerr by running qb update jellyseerr -u username, which carries over your settings, database, and port.

Troubleshooting

Migrating to Seerr and the install timed out?
Warning

If qb update jellyseerr -u username (or the auto-migration it triggers) aborts with Timed out waiting for /opt/username/Seerr/config/settings.json after 60s, the failure is in the Seerr first-boot step, not Jellyseerr itself. See the dedicated recovery steps on the Seerr troubleshooting page.

Update left /opt/username/Seerr missing?
Warning

If an older update run wiped your install directory and you see cd: /opt/username/Seerr: No such file or directory, your last-known-good settings and request database are still on disk under /home/username/.QuickBox/software/seerr/backup/. Follow Recover from an update wipe on the Seerr page to reinstall and restore them.

Service will not start
Info

Symptom: Seerr service fails to start or crashes immediately.

Checks:

  1. Check status: systemctl status jellyseerr@username
  2. View logs: journalctl -u jellyseerr@username -f
  3. Verify Node.js venv: /opt/username/lib/nodejs/Jellyseerr/.venv/bin/node --version (should show v22.11.0)
  4. Check permissions: ls -la /opt/username/Jellyseerr (should be owned by username:username)
  5. Verify port availability: ss -tuln | grep 5055 (port should not be in use by another service)

Resolution: If Node environment is missing or corrupted, reinstall with qb reinstall jellyseerr -u username to rebuild the virtual environment.

404 at /username/jellyseerr
Warning

Symptom: Accessing https://host/username/jellyseerr returns 404 Not Found.

Checks:

  1. Verify nginx config exists: ls -la /etc/nginx/software/username.jellyseerr.conf
  2. Check port in config matches env.conf: grep SOFTWARE_WEB_PORT_SED /etc/nginx/software/username.jellyseerr.conf and grep PORT /opt/username/Jellyseerr/env.conf
  3. Test nginx config: sudo nginx -t
  4. Check service status: systemctl status jellyseerr@username (should be active)
  5. Verify service is listening: ss -tuln | grep 5055

Resolution: Reload nginx with sudo systemctl reload nginx. If domain was installed, ensure /etc/nginx/sites-enabled/username.jellyseerr.conf references the active certificate paths under /etc/nginx/ssl/domain.

For request-flow problems (cannot connect to Sonarr/Radarr, requests not forwarding, Discord notifications) the diagnosis is identical to Seerr — see Troubleshooting on the Seerr page, substituting jellyseerr@username for the service name.

Media Servers

3

Media Management

2

Resources


Join the Community

Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.

  • Dedicated Support
  • Feature Previews
  • Community Configs
  • Active Discussions
Join Discord Server
Last updated on