A community-driven registry for Claude, Cursor, Windsurf, Cline & more. Not affiliated with Anthropic.
Are you the author? Sign in to claim
Unraid CA template and Docker build for Mem0 (OpenMemory). This mega-container utilizes s6-overlay to seamlessly bundle
An Unraid-first, single-container deployment of Mem0 OpenMemory for people who want the easiest reliable self-hosted install without manually wiring a separate vector database on day one.
mem0-aio keeps the critical first-boot dependency bundled: Qdrant plus persistent local storage. The wrapper is opinionated for a predictable beginner install, but it does not hide the real tradeoffs: OpenMemory still needs a valid model/provider configuration to do useful work, external vector backends and hosted model endpoints still need operator knowledge, and exposing the direct MCP/API port is a deliberate security decision rather than a default requirement.
30008765If you want the simplest supported path:
OPENAI_API_KEY for the hosted quick-start, or set OLLAMA_BASE_URL to your external native Ollama root URL for the normal local-LLM path.LLM_MODEL and EMBEDDER_MODEL to models you already have pulled on that server.3000.Leaving OPENAI_API_KEY blank is supported. The intended companion path is external Ollama, not bundled inference inside this image.
When OLLAMA_BASE_URL is set and you do not explicitly override LLM_PROVIDER or EMBEDDER_PROVIDER, the wrapper now defaults both to ollama automatically.
For normal Ollama installs, the wrapper now also auto-detects the embedding dimension it needs for Qdrant. If you use a custom embedder and auto-detection cannot determine the size, set EMBEDDER_DIMENSIONS explicitly in Advanced View.
The web UI works without publishing the direct OpenMemory API / MCP port because the UI proxies API traffic through the same published web port. Direct MCP clients, agents, or tools that connect to port 8765 need two Advanced View settings:
API / MCP Port to the host port you want to publish, usually 8765.[Security] API Bind Address (MEM0_API_HOST) to 0.0.0.0.The default MEM0_API_HOST=127.0.0.1 is intentional. It keeps the direct API / MCP service reachable only inside the container for normal UI-only installs, which avoids exposing an unauthenticated memory API and model/provider configuration surface by accident.
If the container is healthy but external MCP clients cannot connect, check both the host port mapping and MEM0_API_HOST first. Leave MEM0_API_HOST on 127.0.0.1 unless you deliberately publish port 8765 behind your own LAN, firewall, VPN, or reverse-proxy controls.
This repo is deliberately not a stripped-down wrapper. The template now tracks the practical OpenMemory self-hosted environment surface exposed by upstream source and docs, plus AIO defaults for the bundled SQLite + Qdrant path. In Advanced View you can:
/v1 base URLs for auth-protected reverse proxiesQDRANT_URL and QDRANT_API_KEYExternal vector storage is exclusive. Configure one backend only: REDIS_URL, PG_*, external QDRANT_*, Chroma, Weaviate, Milvus, Elasticsearch, OpenSearch, or FAISS. The container rejects competing or partial vector-store selectors instead of letting OpenMemory silently pick the first matching backend.
The wrapper still defaults to the internal bundled storage path so new Unraid users are not forced into extra services on day one.
2026-04-17, upstream Mem0 has a newer stable release than the original wrapper baseline; this repo is being moved to the current stable v2.0.0 line rather than staying on the older v1.0.x line.127.0.0.1 inside the container and is not published by the Unraid template; set MEM0_API_HOST=0.0.0.0 only when intentionally publishing port 8765 behind your own network or reverse-proxy access controls.QDRANT_URL=http://qdrant:6333 plus QDRANT_API_KEY instead of only QDRANT_HOST and QDRANT_PORT.QDRANT_API_KEY against the bundled Qdrant default. Use QDRANT_URL or an external QDRANT_HOST when Qdrant auth is enabled.http://host.docker.internal:11434, not an OpenAI-compatible /v1 path./v1 endpoint, use the OpenAI-compatible base URL fields instead of the native Ollama provider path.ELASTICSEARCH_USE_SSL and ELASTICSEARCH_VERIFY_CERTS. For OpenSearch, it exposes optional user/password plus OPENSEARCH_USE_SSL and OPENSEARCH_VERIFY_CERTS. SSL and certificate verification both default to true; set verification to false only for a trusted self-signed endpoint on a private network.v2.0.0-aio.1.aio-fleet from .aio-fleet.yml.<Changes> sync are run centrally by aio-fleet during release preparation.main publishes latest, the pinned upstream version tag, an explicit AIO packaging line tag, and sha-<commit>.See docs/releases.md for the central release process details.
Required local validation is split between app-specific tests and aio-fleet:
git submodule update --init --recursive
python3 -m venv .venv-local
.venv-local/bin/pip install -e "../aio-fleet[app-tests]"
.venv-local/bin/pytest tests/template --junit-xml=reports/pytest-unit.xml -o junit_family=xunit1
.venv-local/bin/pytest tests/integration -m integration --junit-xml=reports/pytest-integration.xml -o junit_family=xunit1
cd ../aio-fleet
.venv/bin/python -m aio_fleet validate-repo --repo mem0-aio --repo-path ../mem0-aio
.venv/bin/python -m aio_fleet trunk run --repo mem0-aio --repo-path ../mem0-aio --no-fix
CI cost model:
main pushes run the fast validation layers firstmain release-metadata commits when publish is still in play, and for manual dispatchesThe external-backend coverage uses the same pytest command. By default it starts a local mock Ollama container for deterministic embeddings; set OLLAMA_CONTAINER only if you intentionally want to test against an existing Ollama container:
.venv-local/bin/pytest tests/integration -m integration
If this work saves you time, support it here:
MCP server integration for DaVinci Resolve Studio
mcp-language-server gives MCP enabled clients access semantic tools like get definition, references, rename, and diagnos
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots