Верификация развёртывания¶
Проверки после любой установки или обновления. Все команды — реальные.
Здоровье сервисов¶
docker compose ps # все сервисы Up; db/backend с (healthy)
curl -s http://localhost:3000/api/health
# {"status": "ok"|"degraded", ...} — проверяет БД и Redis
Внутри стека: docker logs umbryx_backend --tail 50 — применённые
миграции и старт Uvicorn без traceback.
Первый вход¶
- Откройте
http://<host>:3000— экран входа загружается (SPA отдаёт nginx-контейнер). - Первый запуск: создайте аккаунт администратора (или войдите с
учётными данными из
ADMIN_*). GET /api/auth/statusдо setup возвращает{"initialized": false}— удобная скриптовая проверка.
Функциональный smoke-тест¶
После входа:
- Создайте проект (сайдбар → New project) — вы становитесь его
owner. - Добавьте запись scope (вкладка Scope).
- Infra → Connections → добавьте attacker SSH-таргет (доступный
бокс с установленным
nmap). - Recon → Scans → Nmap → цель из scope → Run.
- Jobs показывает задачу с live-выводом; после завершения Hosts содержит обнаруженный хост и порты.
Проверка издания¶
curl -s -H "Authorization: Bearer <token>" http://localhost:3000/api/system/edition
# {"edition": "ce" | "ee", ...}
В EE также проверьте GET /api/system/license/state — там tier,
features и стадия жизненного цикла (active).
Как выглядит «здоровое» состояние¶
| Проверка | Ожидание |
|---|---|
docker compose ps |
5 сервисов Up, db/backend (healthy) |
/api/health |
{"status": "ok"} |
| Вход | 200, установлена session cookie |
| Скан-задача | queued → running → done (нужен attacker-таргет) |
| WebSocket | приходят live-обновления (бейджи, presence) — за прокси см. Troubleshooting |