Skip to main content

Docker

info

This is the recommended method for most users. Details on how to install Docker can be found on the official Docker website.

Unix (Linux, macOS)

warning

Be sure to replace /path/to/appdata/config in the below examples with a valid host directory path. If this volume mount is not configured correctly, your Jellyseerr settings/data will not be persisted when the container is recreated (e.g., when updating the image or rebooting your machine).

The TZ environment variable value should also be set to the TZ database name of your time zone!

For details on the Docker CLI, please review the official docker run documentation.

Installation:

docker run -d \
--name jellyseerr \
-e LOG_LEVEL=debug \
-e TZ=Asia/Tashkent \
-e PORT=5055 `#optional` \
-p 5055:5055 \
-v /path/to/appdata/config:/app/config \
--restart unless-stopped \
fallenbagel/jellyseerr
tip

If you are using emby, make sure to set the JELLYFIN_TYPE environment variable to emby.

-e JELLYFIN_TYPE=emby

To run the container as a specific user/group, you may optionally add --user=[ user | user:group | uid | uid:gid | user:gid | uid:group ] to the above command.

Updating:

Stop and remove the existing container:

docker stop jellyseerr && docker rm Jellyseerr

Pull the latest image:

docker pull fallenbagel/jellyseerr

Finally, run the container with the same parameters originally used to create the container:

docker run -d ...
tip

You may alternatively use a third-party updating mechanism, such as Watchtower or Ouroboros, to keep Jellyseerr up-to-date automatically.

You could also use diun to receive notifications when a new image is available.

Unraid

  1. Ensure you have the Community Applications plugin installed.
  2. Inside the Community Applications app store, search for Jellyseerr.
  3. Click the Install Button.
  4. On the following Add Container screen, make changes to the Host Port and Host Path 1 (Appdata) as needed.
  5. If you want to use emby, make sure to set the JELLYFIN_TYPE environment variable to emby. Otherwise, remove the variable.
  6. Click apply and access "Jellyseerr" at your <ServerIP:HostPort> in a web browser.

Windows

Please refer to the Docker Desktop for Windows user manual for details on how to install Docker on Windows. There is no need to install a Linux distro if using named volumes like in the example below.

warning

WSL2 will need to be installed to prevent DB corruption! Please see the Docker Desktop WSL 2 backend documentation for instructions on how to enable WSL2. The commands below will only work with WSL2 installed!

First, create a volume to store the configuration data for Jellyseerr using using either the Docker CLI:

docker volume create jellyseerr-data

or the Docker Desktop app:

  1. Open the Docker Desktop app
  2. Head to the Volumes tab
  3. Click on the "New Volume" button near the top right
  4. Enter a name for the volume (example: jellyseerr-data) and hit "Create"

Then, create and start the Jellyseerr container:

docker run -d --name jellyseerr -e LOG_LEVEL=debug -e TZ=Asia/Tashkent -p 5055:5055 -v "jellyseerr-data:/app/config" --restart unless-stopped fallenbagel/jellyseerr:latest
tip

If you are using a named volume, then you can safely ignore the warning about the /app/config folder being incorrectly mounted.

If you are using emby, make sure to set the JELLYFIN_TYPE environment variable to emby.

To access the files inside the volume created above, navigate to \\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\jellyseerr-data\_data using File Explorer.

info

Docker on Windows works differently than it does on Linux; it runs Docker inside of a stripped-down Linux VM. Volume mounts are exposed to Docker inside this VM via SMB mounts. While this is fine for media, it is unacceptable for the /app/config directory because SMB does not support file locking. This will eventually corrupt your database, which can lead to slow behavior and crashes.

If you must run Docker on Windows, you should put the /app/config directory mount inside the VM and not on the Windows host. (This also applies to other containers with SQLite databases.)

Named volumes, like in the example commands above, are automatically mounted inside the VM. Therefore the warning on the setup about the /app/config folder being incorrectly mounted page should be ignored.