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

41 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
tags: [деплой, truenas, portainer]
created: 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-db`**PostgreSQL 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_create``memory_save``memory_query``project_save_state``project_get_state`
Пов'язане: [[Огляд архітектури]], [[Roadmap]]