print-handy ghcr.io/catduckgnaf/print-handy https://github.com/catduckgnaf/print-handy/pkgs/container/print-handy latest Stable. Moves only when a new Print Handy release is published. Recommended for a printer you rely on. nightly Development build, rebuilt nightly from main after the full CI suite passes. Features may be unfinished and settings may change without a release note. bridge bash false https://forums.unraid.net/topic/138058-support-catduck-templates/ https://github.com/catduckgnaf/print-handy Print Handy Discord bot, Moonraker listener, OrcaSlicer and the bundled Spoolman API in one supervised container. Includes the alert-only camera watchdog: spaghetti, detached-part, empty-bed and stall checks post a camera photo to Discord (tune it with the Camera watch variables). Timelapse capture is off by default: set the Timelapse capture variable below to record timelapses inside the container (a camera source for your printer family is required; the optional SSH timelapse archive in the config file is a separate thing and is never required for capture or delivery). Print Handy is the interface; Spoolman's web UI is not included. The Spoolman API listens on 127.0.0.1:8000 inside the container and no port is published by default; the advanced Spoolman port and SPOOLMAN_HOST fields below expose it on the LAN only when you opt in (#443). The Web UI (simple status plus picker configuration that syncs to the YAML settings) is enabled by this template so the WebUI link above works — but it only starts once the Web UI access token below is set, because the template binds it on all interfaces; without a token it stays off and the container log says why (#440). Printers are external services. UPGRADE NOTE — this project was renamed from Print Buddy to Print Handy, and this template is a NEW Community Applications app (the old one was print-buddy): existing Print Buddy installs do not auto-migrate. Install this template, copy your old appdata (/mnt/user/appdata/print-buddy) into the new print-handy appdata paths (renaming any print_buddy_* state files to print_handy_*), move the configuration values across from the old PRINT_BUDDY__... names to the new PRINT_HANDY__... variable names, start this container and check it is healthy, then remove the old app. Full steps are in https://github.com/catduckgnaf/print-handy/blob/main/docs/RENAME-MIGRATION.md. CHOOSING A TAG: pick latest (stable, the default) or nightly in the Tag field when you install. latest moves only when a new release is published. nightly is rebuilt every night from the newest main commit that passed the full CI suite; features may be unfinished and settings may change without a release note. Use latest for a printer you rely on, and nightly to try current code or confirm a fix before it ships. Never run a nightly and a stable container with the same bot token at the same time. Productivity:Tools:Other: http://[IP]:[PORT:8088]/ https://raw.githubusercontent.com/catduckgnaf/catduck-unraid-templates/main/templates/print-handy.xml https://raw.githubusercontent.com/catduckgnaf/catduck-unraid-templates/main/templates/img/print-handy.png --user 1000:1000 --cap-drop ALL --security-opt no-new-privileges:true --pids-limit 256 --memory 2g --cpus 2 --shm-size 256m --log-driver json-file --log-opt max-size=10m --log-opt max-file=3 --restart unless-stopped --health-cmd "python3 /usr/local/bin/print-handy-healthcheck" --health-interval 30s --health-timeout 10s --health-start-period 90s --health-retries 3 Appdata paths owned by UID/GID 1000. Existing Spoolman data can be copied into the Spoolman Data path before first start; nothing is migrated automatically. /mnt/user/appdata/print-handy/hermes /mnt/user/appdata/print-handy/archive /mnt/user/appdata/print-handy/records /mnt/user/appdata/print-handy/cache /mnt/user/appdata/print-handy/spoolman /mnt/user/appdata/print-handy/dot-config 8088 7912 /app/config/docker.yaml standalone America/New_York klipper.generic http://127.0.0.1:8000 true 127.0.0.1 stable true 3 false interval 5.0 3600 536870912 auto gemini-latest true false 0 false true true 0.0.0.0 8088 false false 720 15 2500 auto 300 8091 America/New_York