Files
ai-memory-network-mcp-server/Деплой на TrueNAS.md
T

2.4 KiB
Raw Blame History

tags, created
tags created
деплой
truenas
portainer
2026-07-14

Деплой на TrueNAS

Хост: TrueNAS Scale 192.168.0.199.

План

  1. Датасет: homeLab/portainer/apps/ai_memory_network (dataset preset = Apps, snake_case за конвенцією сусідніх датасетів) — створено 2026-07-14 через midclt.
  2. Portainer stack ai-memory-network (два сервіси):
    • контейнер ai-memory-server (Node.js 22, образ збирається з репозиторію); порт: HTTP MCP endpoint (напр. 8767, щоб не конфліктувати з project-agent на 8766); env: DATABASE_URL, API_KEYS, PORT, пізніше OLLAMA_URL;
    • контейнер ai-memory-dbPostgreSQL 18 як сервіс проекту (образ pgvector/pgvector:pg18, pgvector у комплекті); volume на датасеті проекту; порт назовні не публікуємо (доступ лише всередині stack-мережі).
  3. БД: база ai_memory, користувач ai_memory; CREATE EXTENSION vector; — одразу при ініціалізації (embeddings увімкнуться у фазі 2 без змін схеми).

Деплой стека (Portainer UI)

Рішення: build прямо в Portainer з git-репозиторію.

  • Portainer: https://192.168.0.199:31015 → Stacks → Add stack → Repository
  • Name: ai-memory-network
  • Repository URL: http://192.168.0.199:30008/sages/ai-memory-network-mcp-server
  • Authentication: увімкнути; username sages, password = Gitea API-токен
  • Compose path: compose.yml, reference refs/heads/main
  • Environment variables: POSTGRES_PASSWORD, API_KEYS (значення — в Portainer, НЕ в репозиторії)
  • Порти після деплою: MCP endpoint http://192.168.0.199:8767/mcp, healthcheck /healthz
  • Redeploy при оновленні коду: кнопка Pull and redeploy у стеку

e2e перевірка після деплою

  • GET /healthz{"status":"ok"}
  • MCP initialize + tools/list через /mcp з Bearer-ключем
  • project_creatememory_savememory_queryproject_save_stateproject_get_state

Пов'язане: Огляд архітектури, Roadmap