Skip to content

Conversation

ljm42
Copy link
Member

@ljm42 ljm42 commented Sep 22, 2025

Before Submitting This PR, Please Ensure You Have Completed The Following:

  1. Are internal links to wiki documents using relative file links?
  2. Are all new documentation files lowercase, with dash separated names (ex. unraid-os.mdx)?
  3. Are all assets (images, etc), located in an assets/ subfolder next to the .md/mdx files?
  4. Have you checked to ensure there aren't other open Pull Requests for the same update/change?
  5. Is the build succeeding?

Summary by CodeRabbit

  • Documentation
    • Updated container context menu items (new actions like Console, Stop, Pause, Restart, Project Page, Support, More Info) and clarified their semantics.
    • Added documentation for container health indicator and integrated health status into controlling containers.
    • Reworked and clarified path-mapping examples (media, appdata, multiple shares).
    • Removed an obsolete tip and improved formatting/spacing across examples.

Copy link
Contributor

coderabbitai bot commented Sep 22, 2025

📝 Walkthrough

Walkthrough

Updated documentation for container management: replaced context-menu actions, removed a tip, added a health indicator and integrated it into container controls, reworked path-mapping examples, and standardized formatting/spacing in examples.

Changes

Cohort / File(s) Summary of changes
Container management docs
docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx
Replaced context-menu options (now: Console, Stop, Pause, Restart, Logs, Edit, Remove, Project Page, Support, More Info); removed prior tip; added Health indicator section and integrated health state into Controlling your containers; updated path-mapping examples (host → container: /mnt/user/media/unraid_media, /mnt/user/media/media, /mnt/user/data/data, appdata /config); formatting and spacing cleanup.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant UI as Unraid WebUI
    participant Container
    participant Docs as Documentation (Health / Links)

    rect rgb(240,248,255)
    User->>UI: Open container context menu
    note right of UI: Menu shows\nConsole, Stop, Pause,\nRestart, Logs, Edit,\nRemove, Project Page,\nSupport, More Info
    end

    alt Choose Console
        User->>UI: Select Console
        UI->>Container: Open shell session
    else Choose Stop/Pause/Restart
        User->>UI: Select Stop/Pause/Restart
        UI->>Container: Send stop/pause/restart signal
        Container-->>UI: Report new state
    else View Logs/Edit
        User->>UI: Select Logs/Edit
        UI->>Container: Fetch logs / open editor
    else Open Project/Support
        User->>UI: Select Project Page or Support
        UI->>Docs: Open external link
    end

    note over UI,Container: Health indicator shown in UI\n(added in docs — reflects container health)
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

I nibble docs under moonlit code,
Menus reshuffled down the road.
Healthy lights like thump and cheer,
Paths remapped so jars appear.
A twitch, a hop—containers shine, hooray! 🥕

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description Check ❓ Inconclusive The PR description includes the repository's pre-submission checklist verbatim but contains no completed checklist responses, no concise summary of the actual changes, no rationale, and no confirmation of build or test status; the template structure is present but the content is incomplete and too generic for reviewers to assess readiness. Please complete the checklist items and add a short summary of what changed (which files and the key edits), include the rationale or testing performed, and confirm or link to CI/build results; after those details are added the description will be sufficient for review.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The title "Update Docker container content" concisely and accurately reflects the primary purpose of this changeset — documentation updates to Docker container management (context-menu labels, health indicator, and path‑mapping examples) — and is free of noise or irrelevant detail, making it a reasonable summary for reviewers scanning history. It is somewhat broad but still clearly related to the changeset.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch update-docker-section

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Copy link

github-actions bot commented Sep 22, 2025

PR Preview Action v1.6.2

🚀 View preview at
https://unraid.github.io/docs/pr-preview/pr-332/

Built to branch gh-pages at 2025-09-22 17:28 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@ljm42 ljm42 force-pushed the update-docker-section branch from 956cd39 to 95d0b06 Compare September 22, 2025 17:26
Copy link
Contributor

@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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx (2)

217-229: Health indicator colors/status: align with Docker semantics

Map colors to statuses explicitly and include “Starting”. Unhealthy should not be yellow.

-You will find a colored health indicator next to each container’s icon:
-
-- 🟢 **Healthy**: Indicates that the container is running and responding as expected.
-- 🟡 **Unhealthy**: The container is running but has failed its health check. Investigate the logs or container settings for more information.
-- ⚪ **No health check**: This means no health check is configured for the container. It's common for many apps, and not necessarily a problem.
+You will find a colored health indicator next to each container’s icon:
+
+- 🟢 **Healthy** — The container is running and responding as expected.
+- 🟡 **Starting** — The health check is still initializing.
+- 🔴 **Unhealthy** — The container is running but failing its health check; inspect logs and settings.
+- ⚪ **No health check** — No health check is configured. Common and not necessarily a problem.

351-356: Fix copy/paste error: missing closing quote in docker logs example

The command as written will fail.

-    docker logs "container-name
+    docker logs "container-name"
🧹 Nitpick comments (1)
docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx (1)

243-260: Path mapping examples: simplify container paths for consistency

Using a conventional container path like “/media” reduces cognitive load versus “/unraid_media”. Consider standardizing the first example to match later examples.

-**Media server:**  
-  Host path: `/mnt/user/media`  
-  Container path: `/unraid_media`  
-
-  In the app, set your media library location to `/unraid_media`.  
+**Media server:**  
+  Host path: `/mnt/user/media`  
+  Container path: `/media`  
+
+  In the app, set your media library location to `/media`.  

Also consider adding “set this mapping read‑only if your app doesn’t need to write” to nudge safer defaults.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 233902a and 95d0b06.

⛔ Files ignored due to path filters (1)
  • static/img/Dockerguide-controlling.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx (2 hunks)
🔇 Additional comments (1)
docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx (1)

56-66: Internal link hygiene: verify relative paths and image asset exist

Previous verification attempt failed with a Python SyntaxError; run the corrected script below from the repo root and paste its output.

  • ../manage-storage/shares.mdx (Line 56)
  • ../../system-administration/secure-your-server/securing-your-connection.mdx (Line 40)
  • ../customize-your-experience/plugins.mdx (Lines 271, 280)
  • /img/Dockerguide-controlling.png -> static/img/Dockerguide-controlling.png
#!/usr/bin/env bash
set -euo pipefail
F='docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx'

python3 - <<'PY'
import os, re, sys
f = os.path.join('docs','unraid-os','using-unraid-to','run-docker-containers','managing-and-customizing-containers.mdx')
if not os.path.exists(f):
    print("ERROR: source file not found:", f); sys.exit(1)
text = open(f, encoding='utf-8').read()

# 1) Check relative markdown links (excluding http/mailto)
links = []
for m in re.finditer(r'\]\((?!https?://)(?!mailto:)([^)#\s]+)', text):
    links.append((m.group(1), m.start()))
missing = []
for href, pos in links:
    if href.startswith('/img/'):
        p = os.path.join('static', href.lstrip('/'))
    else:
        p = os.path.normpath(os.path.join(os.path.dirname(f), href))
    if not os.path.exists(p):
        missing.append((href, p, pos))
print("Relative links found:", len(links))
if missing:
    print("MISSING targets:")
    for href, p, pos in missing:
        print(f"  - {href} -> {p} (at byte {pos})")
    sys.exit(1)
else:
    print("All relative links resolve.")

# Explicit image check
img_path = os.path.join('static', 'img', 'Dockerguide-controlling.png')
print("Explicit image check:", img_path, "exists=", os.path.exists(img_path))

# 2) Quick sanity: find docker command lines with odd number of double quotes
odd = []
for i, line in enumerate(text.splitlines(), 1):
    if 'docker ' in line and line.strip().startswith('docker'):
        if line.count('"') % 2:
            odd.append((i, line.strip()))
if odd:
    print("Potential unbalanced quotes:")
    for i, l in odd:
        print(f"  Line {i}: {l}")
    sys.exit(2)
else:
    print("No unbalanced quotes detected in docker command snippets.")
PY

Comment on lines +205 to +215
| **WebUI** | Opens the container's web interface in a new browser tab (if available). |
| **Console** | Opens a command-line interface to interact with the container directly. |
| **Stop** | Stops the running container. |
| **Pause** | Pauses the container, temporarily halting all processes. |
| **Restart** | Restarts the container, applying any configuration changes. |
| **Logs** | Shows the container's log output for troubleshooting. |
| **Edit** | Change container settings, such as port or volume mappings. Changes apply immediately after saving. |
| **Remove** | Deletes the container. You can choose to remove just the container or also delete its image. |
| **Project Page** | Opens the container's project page for documentation and support. |
| **Support** | Provides access to support resources and help for the container. |
| **More Info** | Displays additional information about the container and its configuration. |
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

🧩 Analysis chain

Context menu options: clarify state- and template-specific availability; tweak “Restart” wording

  • The menu is context-sensitive. “Start” and “Update” may appear (or disappear) based on state; “Project Page”, “Support”, and “More Info” depend on the template metadata.
  • “Restart … applying any configuration changes” is misleading; template changes apply when you Edit → Save (container is re-created), not on a plain restart.

Apply this minimal copy edit:

-| **Restart**                  | Restarts the container, applying any configuration changes.                                         |
+| **Restart**                  | Restarts the container. Template changes are applied when you Edit and Save the container.          |
-| **Project Page**             | Opens the container's project page for documentation and support.                                   |
-| **Support**                  | Provides access to support resources and help for the container.                                    |
-| **More Info**                | Displays additional information about the container and its configuration.                           |
+| **Project Page**             | Opens the container's project page (if available).                                                  |
+| **Support**                  | Opens support resources for the container (if available).                                           |
+| **More Info**                | Shows additional information about the container (if available).                                    |

Optional: add a sentence below the table noting options vary by container state (running vs stopped) and template metadata.


🏁 Script executed:

#!/bin/bash
set -euo pipefail
TARGET="docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx"
rg -n --hidden --no-ignore --line-number "WebUI" || true
if [ -f "$TARGET" ]; then
  sed -n '190,230p' "$TARGET"
else
  echo "File not found: $TARGET"
fi

Length of output: 5908


Context menu options: clarify state- and template-specific availability; tweak “Restart” wording

Menu is context-sensitive; “Restart” should not imply template/config changes are applied — those take effect when you Edit → Save (container is re-created).

-| **Restart**                  | Restarts the container, applying any configuration changes.                                         |
+| **Restart**                  | Restarts the container. Template changes are applied when you Edit and Save the container.          |
-| **Project Page**             | Opens the container's project page for documentation and support.                                   |
-| **Support**                  | Provides access to support resources and help for the container.                                    |
-| **More Info**                | Displays additional information about the container and its configuration.                           |
+| **Project Page**             | Opens the container's project page (if available).                                                  |
+| **Support**                  | Opens support resources for the container (if available).                                           |
+| **More Info**                | Shows additional information about the container (if available).                                    |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| **WebUI** | Opens the container's web interface in a new browser tab (if available). |
| **Console** | Opens a command-line interface to interact with the container directly. |
| **Stop** | Stops the running container. |
| **Pause** | Pauses the container, temporarily halting all processes. |
| **Restart** | Restarts the container, applying any configuration changes. |
| **Logs** | Shows the container's log output for troubleshooting. |
| **Edit** | Change container settings, such as port or volume mappings. Changes apply immediately after saving. |
| **Remove** | Deletes the container. You can choose to remove just the container or also delete its image. |
| **Project Page** | Opens the container's project page for documentation and support. |
| **Support** | Provides access to support resources and help for the container. |
| **More Info** | Displays additional information about the container and its configuration. |
| **WebUI** | Opens the container's web interface in a new browser tab (if available). |
| **Console** | Opens a command-line interface to interact with the container directly. |
| **Stop** | Stops the running container. |
| **Pause** | Pauses the container, temporarily halting all processes. |
| **Restart** | Restarts the container. Template changes are applied when you Edit and Save the container. |
| **Logs** | Shows the container's log output for troubleshooting. |
| **Edit** | Change container settings, such as port or volume mappings. Changes apply immediately after saving. |
| **Remove** | Deletes the container. You can choose to remove just the container or also delete its image. |
| **Project Page** | Opens the container's project page (if available). |
| **Support** | Opens support resources for the container (if available). |
| **More Info** | Shows additional information about the container (if available). |
🤖 Prompt for AI Agents
In
docs/unraid-os/using-unraid-to/run-docker-containers/managing-and-customizing-containers.mdx
around lines 205–215, the context menu entries need clarification: mark that the
menu is context-sensitive (some options only appear for running containers,
others only for templates), update the “Restart” line to avoid implying template
changes are applied (reword to indicate it simply restarts the running
container), and add a short note that template/config changes take effect only
after Edit → Save (which recreates the container); also indicate state-specific
availability where relevant (e.g., Console/Logs only for running containers,
Edit/Remove/More Info available for stopped or running, Project Page/Support
when metadata present).

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.

1 participant