This repository contains an Unraid Community Applications style Docker template for running Hermes Agent from the official nousresearch/hermes-agent image.
Hermes has good Docker documentation, but no Unraid-specific template. This template follows the official Docker deployment pattern:
- one container running
gateway run - persistent Hermes data mounted at
/opt/data - optional dashboard side-process via
HERMES_DASHBOARD=1 - dashboard chat/TUI enabled by default
- OpenAI-compatible API server on container-localhost, with optional LAN publishing on port
8642 - Playwright-friendly shared memory via
--shm-size=1g - official image file ownership using
HERMES_UID=10000andHERMES_GID=10000, which keeps dashboard chat working - no
/opt/hermessource-code volume mount
templates/hermes-agent.xml- Unraid Docker template.ca_profile.xml- Repository metadata for Community Applications.icon.svg- Simple repository icon placeholder.
Copy templates/hermes-agent.xml to your Unraid flash drive:
cp templates/hermes-agent.xml /boot/config/plugins/dockerMan/templates-user/my-hermes-agent.xmlThen go to Docker -> Add Container -> Template -> User templates -> Hermes-Agent.
Fill in at least one model provider key before starting, for example:
OPENROUTER_API_KEYANTHROPIC_API_KEYOPENAI_API_KEY
The dashboard is enabled by default and is published at:
http://<unraid-ip>:9119/
The dashboard can manage API keys and local config, so do not expose it directly to the internet. Put it behind Tailscale, a VPN, a trusted reverse proxy with auth, or keep it LAN-only.
If you prefer the interactive setup wizard, start the container, open the Unraid container console, and run:
hermes setupThe API server is enabled by default on 127.0.0.1 inside the container so the dashboard and gateway can talk locally. To expose it to your LAN or another container through Unraid's port mapping:
- Keep
API_SERVER_ENABLEDset totrue. - Set
API_SERVER_HOSTto0.0.0.0. - Set
API_SERVER_KEYto a strong random value, minimum 8 characters. - Keep the
Gateway API Portmapping, default8642.
Use http://<unraid-ip>:8642/v1 from Open WebUI or other OpenAI-compatible clients and pass the key as the bearer token.
The template includes a writable workspace mount at /workspace. Hermes can work on files there when configured or instructed to use that path.
Advanced optional mounts are included but blank by default:
- Docker socket: mount
/var/run/docker.sockonly if you intentionally want Hermes to control host Docker. - Host share mount: point it at a specific share such as
/mnt/user/projects, not the whole array, unless you understand the risk.
The dashboard's embedded chat/TUI tab is enabled by default. Leave HERMES_UID=10000 and HERMES_GID=10000 if you want dashboard chat to work. Some Hermes image versions have permission trouble rebuilding the TUI under an Unraid-style 99:100 remap; use that remap only if share-file ownership matters more than the dashboard chat tab.
Before submitting to Community Applications:
- Publish this repository publicly.
- Replace the
IconURL if you want to use your own hosted icon. - Run the Community Applications Validate and Scan flow at
https://ca.unraid.net/submit/new.