diff --git a/docs/getting-started/third-parties/unraid.mdx b/docs/getting-started/third-parties/unraid.mdx index 73b14bf1..4d43f419 100644 --- a/docs/getting-started/third-parties/unraid.mdx +++ b/docs/getting-started/third-parties/unraid.mdx @@ -5,12 +5,7 @@ sidebar_position: 3 --- # Unraid -:::danger -This method has not yet been updated for Seerr and is awaiting a community contribution. -Feel free to open a pull request on GitHub to update this installation method. -::: - + +If an official Unraid Community Applications template for Seerr isn't available in your catalog, you can install Seerr manually using Unraid's Docker UI. + +## Fresh Installation + +### 1. Create the config directory + +Open the Unraid terminal and run: + +```bash +mkdir -p /mnt/user/appdata/seerr +chown -R 1000:1000 /mnt/user/appdata/seerr +``` + +### 2. Add the Docker container + +Navigate to the **Docker** tab in Unraid and click **Add Container**. Fill in the following: + +| Field | Value | +|---|---| +| **Name** | `seerr` | +| **Repository** | `ghcr.io/seerr-team/seerr:latest` | +| **Registry URL** (optional) | `https://ghcr.io` | +| **Icon URL** | `https://raw.githubusercontent.com/seerr-team/seerr/develop/public/android-chrome-512x512.png` | +| **WebUI** | `http://[IP]:[PORT:5055]` | +| **Extra Parameters** | `--init` | +| **Network Type** | `bridge` | +| **Privileged** | `Off` | + +Then click **Add another Path, Port, Variable** to add: + +**Port:** +| Field | Value | +|---|---| +| Container Port | `5055` | +| Host Port | `5055` | +| Connection Type | `TCP` | + +**Path:** +| Field | Value | +|---|---| +| Container Path | `/app/config` | +| Host Path | `/mnt/user/appdata/seerr` | + +**Variable:** +| Field | Value | +|---|---| +| Key | `TZ` | +| Value | Your [TZ database name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) (e.g., `America/New_York`) | + +**Variable (optional):** +| Field | Value | +|---|---| +| Key | `LOG_LEVEL` | +| Value | `info` | + +Click **Apply** to create and start the container. + +### 3. Access Seerr + +Open the WebUI at `http://:5055` and follow the setup wizard. + +:::info +The `--init` flag in **Extra Parameters** is required. Seerr does not include its own init process, so `--init` ensures proper signal handling and clean container shutdowns. +::: \ No newline at end of file diff --git a/docs/migration-guide.mdx b/docs/migration-guide.mdx index 98053487..2bc039eb 100644 --- a/docs/migration-guide.mdx +++ b/docs/migration-guide.mdx @@ -23,7 +23,6 @@ Installation methods are now divided into two categories: official and third-par The Seerr team is only responsible for official installation methods, while third-party methods are maintained by the community. Some methods are currently not maintained, but this does not mean they are permanently discontinued. The community may restore and support them if they choose to do so. -- **Unraid app:** Not maintained - **Snap package:** Not maintained ::: @@ -212,3 +211,70 @@ See https://aur.archlinux.org/packages/seerr ### TrueNAS Waiting for https://github.com/truenas/apps/issues/3374 + +### Unraid + +Refer to [Seerr Unraid Documentation](/getting-started/third-parties/unraid), all of our examples have been updated to reflect the below change. + +Seerr will automatically migrate your existing Overseerr or Jellyseerr data on first startup. No manual database migration is needed. + +1. Stop and remove the old Overseerr (or Jellyseerr) container from the Unraid **Docker** tab. Click the container icon, then **Stop**, then **Remove**. **⚠️ Do not delete the appdata folder ⚠️** + +2. Back up your existing appdata folder: +```bash +cp -a /mnt/user/appdata/overseerr /mnt/user/appdata/overseerr-backup +``` + +3. Fix config folder permissions — Seerr runs as the `node` user (UID 1000) instead of root: +```bash +chown -R 1000:1000 /mnt/user/appdata/overseerr +``` +For Jellyseerr users, replace `overseerr` with `jellyseerr` in the path above. + +4. Add a new container in the Unraid **Docker** tab. Click **Add Container** and fill in the following: + +| Field | Value | +|---|---| +| **Name** | `seerr` | +| **Repository** | `ghcr.io/seerr-team/seerr:latest` | +| **Registry URL** (optional) | `https://ghcr.io` | +| **Icon URL** | `https://raw.githubusercontent.com/seerr-team/seerr/develop/public/android-chrome-512x512.png` | +| **WebUI** | `http://[IP]:[PORT:5055]` | +| **Extra Parameters** | `--init` | +| **Network Type** | `bridge` | +| **Privileged** | `Off` | + +Then click **Add another Path, Port, Variable** to add: + +**Port:** +| Field | Value | +|---|---| +| Container Port | `5055` | +| Host Port | `5055` | +| Connection Type | `TCP` | + +**Path** — point this to your existing config folder: +| Field | Value | +|---|---| +| Container Path | `/app/config` | +| Host Path | `/mnt/user/appdata/overseerr` | + +For Jellyseerr users, use `/mnt/user/appdata/jellyseerr`. + +**Variable:** +| Field | Value | +|---|---| +| Key | `TZ` | +| Value | Your [TZ database name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) (e.g., `America/New_York`) | + +**Variable (optional):** +| Field | Value | +|---|---| +| Key | `LOG_LEVEL` | +| Value | `info` | + +5. Click **Apply** to start the container. Check the container logs to confirm the automatic migration completed successfully. + +:::tip +If you are using a reverse proxy (such as SWAG or Nginx Proxy Manager), update your proxy configuration to point to the new container name `seerr`. The default port remains `5055`. +::: \ No newline at end of file