Skip to content

docs: Updates the Unraid documentation for alternative way to deploy Seerr using correct file system permissions and prevent access issues#2471

Open
milapointe wants to merge 12 commits intoseerr-team:developfrom
milapointe:develop
Open

docs: Updates the Unraid documentation for alternative way to deploy Seerr using correct file system permissions and prevent access issues#2471
milapointe wants to merge 12 commits intoseerr-team:developfrom
milapointe:develop

Conversation

@milapointe
Copy link

@milapointe milapointe commented Feb 16, 2026

Description

This PR updates the Unraid documentation for Seerr to clarify supported permission-handling options and avoid access issues.

  • Permission options: Documents two supported approaches to avoid permission problems on Unraid:
    • Recommended: change ownership of the host config folder so Seerr runs with its native UID/GID:
      chown -R 1000:1000 /mnt/user/appdata/seerr
    • Alternative: run the container as Unraid’s nobody:users account by adding the extra Docker parameter --user 99:100 (avoids changing host ownership)
  • Do not mix: Explicitly warns to choose one approach, do not combine chown -R 1000:1000 on the host with --user 99:100 in the container to prevent confusing ownership and permission states.

This change ensures files created by the container are handled predictably and prevents "Permission Denied" errors when managing files via SMB or the Unraid WebGUI.

How Has This Been Tested?

  • Environment: Unraid 6.12.x
  • Test: Verified that using --user 99:100 allows the container to write to /mnt/user/appdata/seerr and that the resulting files are accessible and manageable by the Unraid host system without permission conflicts.

Screenshots / Logs (if applicable)

Refer to the "Files changed" tab for the updated documentation layout.

Checklist:

  • I have read and followed the contribution guidelines.
  • Disclosed any use of AI (Used Gemini AI to refine the English phrasing of the documentation note for better clarity).
  • I have updated the documentation accordingly.
  • All new and existing tests passed.
  • Successful build pnpm build
  • Translation keys pnpm i18n:extract
  • Database migration (if required)

Summary by CodeRabbit

  • Documentation
    • Introduced a two-tab install UI (Recommended / Alternative) for Unraid with parallel flows.
    • Clarified manual install warnings and noted Unraid Community Apps/templates.
    • Clarified permission options: recommend chown 1000:1000, alternative chown 99:100 or running container as Unraid user; warned against mixing methods.
    • Expanded container setup details, port/path/variable examples, optional LOG_LEVEL, and explicit Apply/Access steps per flow.
    • Added informational note in Unraid migration steps.

@milapointe milapointe requested a review from a team as a code owner February 16, 2026 22:50
@coderabbitai
Copy link

coderabbitai bot commented Feb 16, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Reworked Unraid documentation: introduced a tabbed Recommended vs Alternative installation flow, clarified permission options (chown 1000:1000 or use --user 99:100), added container config details (extra params, ports, paths, variables), and added an informational note in the migration guide.

Changes

Cohort / File(s) Summary
Unraid Getting Started
docs/getting-started/third-parties/unraid.mdx
Added MDX Tabs for Recommended/Alternative flows; expanded warning/introduction; added two permission workflows (chown 1000:1000 vs chown 99:100 + --user 99:100); updated Extra Parameters (--init, --init --user 99:100); clarified ports/paths/vars and Apply/Access steps.
Migration Guide
docs/migration-guide.mdx
Inserted an informational admonition after host-folder permissions pointing to Unraid docs as an alternative permission method and fixed info block formatting/newline.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • fallenbagel

Poem

🐰 I hopped through docs with nimble paws,
Tweaked UIDs so folders pause no more,
Tabs for choices, clear and bright,
Ports and flags tucked in just right,
A cheerful rabbit skips—hooray! 🎉

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: updating Unraid documentation to present alternative deployment methods with correct filesystem permissions.
Linked Issues check ✅ Passed The PR addresses issue #2460 by documenting the --user 99:100 approach as an alternative method for Unraid deployments, fulfilling the core requirement to prevent permission-related startup failures.
Out of Scope Changes check ✅ Passed All changes are scoped to Unraid documentation updates and migration guidance directly related to the linked issue; no unrelated modifications detected.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Fix all issues with AI agents
Verify each finding against the current code and only fix it if needed.


In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 79-82: Bold the second occurrence of "Extra Parameters" to match
the first (make "Extra Parameters" bold wherever referenced) and insert a blank
line between the paragraph describing the `--init` flag and the paragraph
describing the `--user 99:100` flag so the `--init` and `--user` explanations
are separated for consistent formatting; update the block that mentions
`--init`, `--user 99:100`, and "Extra Parameters" accordingly.
🧹 Nitpick comments (1)
🤖 Fix all nitpicks with AI agents
Verify each finding against the current code and only fix it if needed.


In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 79-82: Bold the second occurrence of "Extra Parameters" to match
the first (make "Extra Parameters" bold wherever referenced) and insert a blank
line between the paragraph describing the `--init` flag and the paragraph
describing the `--user 99:100` flag so the `--init` and `--user` explanations
are separated for consistent formatting; update the block that mentions
`--init`, `--user 99:100`, and "Extra Parameters" accordingly.
docs/getting-started/third-parties/unraid.mdx (1)

79-82: Minor formatting inconsistency: bold styling differs between lines.

Line 80 uses **Extra Parameters** (bold), but line 81 uses plain Extra Parameters. For consistency, consider bolding both occurrences.

Additionally, inserting a blank line between the --init and --user explanations would improve readability and ensure consistent paragraph separation across different Markdown renderers.

📝 Suggested formatting fix
 :::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. 
-The `--user 99:100` flag in Extra Parameters ensures the container runs with the correct permissions. In Unraid, the default user account is nobody (ID 99) and the default group is users (ID 100). Using this flag prevents "Permission Denied" errors when the container tries to read or write to your shares.
+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.
+
+The `--user 99:100` flag in **Extra Parameters** ensures the container runs with the correct permissions. In Unraid, the default user account is nobody (ID 99) and the default group is users (ID 100). Using this flag prevents "Permission Denied" errors when the container tries to read or write to your shares.
 :::
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/getting-started/third-parties/unraid.mdx` around lines 79 - 82, Bold the
second occurrence of "Extra Parameters" to match the first (make "Extra
Parameters" bold wherever referenced) and insert a blank line between the
paragraph describing the `--init` flag and the paragraph describing the `--user
99:100` flag so the `--init` and `--user` explanations are separated for
consistent formatting; update the block that mentions `--init`, `--user 99:100`,
and "Extra Parameters" accordingly.

@fallenbagel
Copy link
Collaborator

#2470 literally explains the proper method to do this on unraid though.

@milapointe
Copy link
Author

#2470 literally explains the proper method to do this on unraid though.

Well 1000:1000 isn't right. Should be 99:100 on the file folder

@fallenbagel
Copy link
Collaborator

#2470 literally explains the proper method to do this on unraid though.

Well 1000:1000 isn't right. Should be 99:100 on the file folder

It is correct. There are multiple ways to do this. Your way is an ALTERNATIVE way. But that pr is absolutely correct.

@fallenbagel
Copy link
Collaborator

Accidentally closed. Please rework this pr stating doing this as an alternative method.

@fallenbagel fallenbagel reopened this Feb 17, 2026
@github-actions github-actions bot added the merge conflict Cannot merge due to merge conflicts label Feb 17, 2026
@github-actions
Copy link

This pull request has merge conflicts. Please resolve the conflicts so the PR can be successfully reviewed and merged.

Copy link
Collaborator

@fallenbagel fallenbagel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please make the requested changes.

@milapointe
Copy link
Author

Please make the requested changes.

will do.

@github-actions github-actions bot removed the merge conflict Cannot merge due to merge conflicts label Feb 17, 2026
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
docs/getting-started/third-parties/unraid.mdx (1)

88-89: Good explanation, but adjust if presenting as alternative.

The explanation of --init and --user 99:100 is clear and accurate. If the documentation is restructured per maintainer feedback to present both methods, consider updating this block to explain:

  1. --init is always required
  2. --user 99:100 is needed only if you chose the 99:100 ownership approach
  3. Without --user, the container runs as 1000:1000 (matching Method 1's chown)

This would help users understand which flags apply to their chosen method.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/getting-started/third-parties/unraid.mdx` around lines 88 - 89, Update
the paragraph to present the flags as conditional guidance: state that the
`--init` flag is always required for proper signal handling and clean shutdown,
explain that `--user 99:100` is only required if the reader chooses the "99:100
ownership" approach, and clarify that if `--user` is omitted the container will
run as 1000:1000 (matching the chown behavior described in Method 1); keep
references to `--init`, `--user 99:100`, and "Method 1" so readers can map flags
to the chosen ownership method.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Line 50: Update the Extra Parameters row to present both supported methods:
show Method 1 as "`--init` only (use when your host uses chown 1000:1000)" and
Method 2 as "`--init --user 99:100` (use when your host uses chown 99:100)`", so
readers can pick based on their Unraid setup; mention the corresponding chown
examples (`chown 1000:1000` and `chown 99:100`) alongside the flags for clarity.
- Line 36: Update the documentation to present the two chown approaches as
alternatives rather than replacing one with the other: keep the existing "chown
-R 1000:1000 /mnt/user/appdata/seerr" as Method 1 (container internal UID) and
add Method 2 showing "chown -R 99:100 /mnt/user/appdata/seerr" with an
explanatory note to use "--user 99:100" for Unraid's nobody:users mapping;
ensure both commands are shown with brief one-line context explaining when to
use each.

---

Nitpick comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 88-89: Update the paragraph to present the flags as conditional
guidance: state that the `--init` flag is always required for proper signal
handling and clean shutdown, explain that `--user 99:100` is only required if
the reader chooses the "99:100 ownership" approach, and clarify that if `--user`
is omitted the container will run as 1000:1000 (matching the chown behavior
described in Method 1); keep references to `--init`, `--user 99:100`, and
"Method 1" so readers can map flags to the chosen ownership method.

@milapointe milapointe changed the title Updates the Unraid documentation for Seerr to ensure correct file permissions and prevent access issues Updates the Unraid documentation for alternative way to deploy Seerr using correct file system permissions and prevent access issues Feb 17, 2026
@milapointe milapointe marked this pull request as draft February 17, 2026 06:28
@milapointe milapointe marked this pull request as ready for review February 17, 2026 07:35
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Line 54: Update the misspelled word "Explaination" to "Explanation" in the
docs text shown in unraid.mdx (the line that currently reads "Explaination : Do
not change host ownership..."); search the file for any other occurrences of
"Explaination" and correct them to "Explanation" to keep the document
consistent.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
docs/getting-started/third-parties/unraid.mdx (1)

56-59: Add blank line after closing the warning block.

A blank line after ::: and before the ### 2. heading improves readability and ensures consistent rendering across MDX parsers.

📝 Proposed fix
 :::warning
 Do not use both approaches at the same time, either change the host folder ownership to `1000:1000` or run the container with `--user 99:100`. Mixing both can create confusing ownership and permission states.
 :::
+
 ### 2. Add the Docker container
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/getting-started/third-parties/unraid.mdx` around lines 56 - 59, Add a
single blank line after the closing warning block (the line with ":::") so there
is an empty line between that block and the subsequent heading "### 2. Add the
Docker container"; update the MDX near the ':::warning' block to ensure a blank
line exists immediately before the "### 2. Add the Docker container" heading to
improve readability and parser consistency.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 48-54: Fix the contradictory wording and punctuation in the Unraid
note: remove the extra space before the colon so "Explanation:" is correctly
formatted, and reword the sentence that follows the chown example to clarify
intent — state that after adjusting host ownership with "chown -R 99:100
/mnt/user/appdata/seerr" you should then run the container with Unraid's
nobody:users via the Docker param "--user 99:100" to ensure the container
process uses Unraid's default UID/GID and keeps files accessible via SMB and the
Unraid WebGUI (replace the current "Do not change host ownership" phrasing with
this clearer description).

---

Nitpick comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 56-59: Add a single blank line after the closing warning block
(the line with ":::") so there is an empty line between that block and the
subsequent heading "### 2. Add the Docker container"; update the MDX near the
':::warning' block to ensure a blank line exists immediately before the "### 2.
Add the Docker container" heading to improve readability and parser consistency.

Copy link
Member

@M0NsTeRRR M0NsTeRRR left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello,

@fallenbagel asked to update the doc by adding an alternative method not removing an existing one.
You can do it by using tabs like here https://github.com/seerr-team/seerr/blob/develop/docs/migration-guide.mdx?plain=1#L66

@milapointe
Copy link
Author

Hello,

@fallenbagel asked to update the doc by adding an alternative method not removing an existing one. You can do it by using tabs like here https://github.com/seerr-team/seerr/blob/develop/docs/migration-guide.mdx?plain=1#L66

i didnt remove, I added after his comment.

@fallenbagel
Copy link
Collaborator

Hello,

@fallenbagel asked to update the doc by adding an alternative method not removing an existing one. You can do it by using tabs like here https://github.com/seerr-team/seerr/blob/develop/docs/migration-guide.mdx?plain=1#L66

i didnt remove, I added after his comment.

I would suggest using tabs. So it's better ux

@milapointe milapointe changed the title Updates the Unraid documentation for alternative way to deploy Seerr using correct file system permissions and prevent access issues docs: Updates the Unraid documentation for alternative way to deploy Seerr using correct file system permissions and prevent access issues Feb 17, 2026
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
docs/getting-started/third-parties/unraid.mdx (1)

43-49: Consider adding a warning about not mixing approaches.

Per the PR objectives, users should be warned not to combine both approaches (e.g., running chown -R 1000:1000 on the host while using --user 99:100 in the container). This combination would cause permission mismatches.

Consider adding a warning admonition before or after the tabs:

📝 Suggested addition
:::caution
Do not mix approaches. If you use `chown -R 1000:1000`, do not add `--user 99:100` to Extra Parameters (and vice versa). Mixing these will cause permission mismatches and access errors.
:::
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/getting-started/third-parties/unraid.mdx` around lines 43 - 49, Add a
clear caution admonition that warns users not to mix the two permission
approaches (changing host ownership with the chown command shown in the
"Recommended" TabItem and setting container user via Extra Parameters like
`--user 99:100`); place this admonition immediately before or after the <Tabs
groupId="unraid-permissions"> block (or adjacent to the <TabItem
value="recommended"> content) so it is visible alongside the chown example and
explicitly states that using both will cause permission mismatches and access
errors.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 55-64: The markdown table has inconsistent pipe delimiters: add a
trailing '|' to the header row and remove the duplicate trailing pipes from the
rows for WebUI, Network Type, and Privileged so every row uses a single '|' at
the end; specifically update the header (the row with "Field | Value") to end
with '|' and fix the rows identified by the cell labels "**WebUI**", "**Network
Type**", and "**Privileged**" to use a single trailing '|' to ensure consistent
markdown table rendering.
- Around line 115-124: The markdown table has inconsistent pipe usage causing
misaligned columns; edit the table in unraid.mdx so every row uses the same
three-column pipe pattern (| Field | Value |) and remove the stray double pipes
from the WebUI, Network Type, and Privileged rows (the lines containing
`**WebUI**`, `**Network Type**`, and `**Privileged**`), and ensure other rows
like `**Name**`, `**Repository**`, `**Registry URL**`, `**Icon URL**`, and
`**Extra Parameters**` follow the same consistent pipe layout.

---

Nitpick comments:
In `@docs/getting-started/third-parties/unraid.mdx`:
- Around line 43-49: Add a clear caution admonition that warns users not to mix
the two permission approaches (changing host ownership with the chown command
shown in the "Recommended" TabItem and setting container user via Extra
Parameters like `--user 99:100`); place this admonition immediately before or
after the <Tabs groupId="unraid-permissions"> block (or adjacent to the <TabItem
value="recommended"> content) so it is visible alongside the chown example and
explicitly states that using both will cause permission mismatches and access
errors.

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
@milapointe milapointe requested a review from M0NsTeRRR February 17, 2026 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unraid migration documentation

3 participants