# MemPalace on Unraid — GUI install with `br0` networking This walks through installing MemPalace as a single Docker container on Unraid, using the **dockerMan WebUI** (no compose, no SSH-driven YAML), attached to **`br0`** so the container has its own IP address on your LAN — separate from Unraid's IP. If you'd rather do an SSH/compose install with TLS + bearer auth via a Caddy sidecar, see [`README.md`](README.md). This guide is the GUI-friendly path. --- ## Why `br0`? `br0` (macvlan-style bridge to your physical network) gives the container its **own LAN IP**. That means: * No port conflicts with Unraid itself (you can keep `8765`/`8766` instead of remapping). * Clients connect to the container directly — `http://:8765/sse` rather than `http://:8765/sse`. * The container can be reached by every machine on your LAN without punching holes in the Unraid host. The trade-off, classic macvlan: * By default the **Unraid host itself can't talk to the container**. If you only ever connect from other machines, this is fine. If you also want to test from Unraid's own shell, enable **Host access to custom networks** (see Step 1). * The container is exposed bare to the LAN. Anyone on the LAN can hit the MCP endpoint — it has no auth in this mode. See "Security notes" at the bottom. --- ## Prerequisites * Unraid 6.12+ with Docker enabled. * The repo synced to a path on Unraid (e.g. `/mnt/user/system/build/mempalace`). You can clone over SSH or just copy the folder via SMB. * `/mnt/user/appdata` available (default on every Unraid). * A free LAN IP for the container, ideally with a DHCP reservation on your router so it doesn't drift. --- ## Step 1 — Enable br0 in Unraid Skip this if you already use `br0` for other containers. 1. **Stop the Docker service** so settings are editable: *Settings → Docker → Enable Docker = No → Apply*. 2. *Settings → Docker → Advanced View*. 3. **Host access to custom networks** = **Enabled**. (Lets the Unraid shell reach `br0` containers — needed for `curl` health checks from Unraid itself. Skip if you don't need that.) 4. **Docker custom network type** = **macvlan** (default) or **ipvlan** if your switch/router doesn't like macvlan MAC churn. 5. Re-enable Docker: *Enable Docker = Yes → Apply*. 6. Confirm `br0` shows up under *Settings → Docker → Docker custom networks* (or implicitly — every Unraid with a bridge has it). --- ## Step 2 — Build the image on Unraid There's no public registry image — the container is built locally from the repo's root `Dockerfile`. SSH into Unraid (or open the WebUI terminal) and run: ```bash cd /mnt/user/system/build/mempalace # wherever you put the repo docker build -t mempalace-server:latest . ``` First build pulls `python:3.13-slim` and pip-installs `mempalace` + `mcp-proxy` (~3–5 minutes). When it finishes: ```bash docker images mempalace-server # REPOSITORY TAG IMAGE ID CREATED SIZE # mempalace-server latest