Architecture¶
Компоненты системы¶
Система делится на две основные части:
Control Plane (серверная инфраструктура)¶
| Компонент |
Технология |
Описание |
| API |
NestJS (TypeScript) |
REST + WebSocket сервер, бизнес-логика, управление агентами |
| Web |
Next.js (TypeScript) |
Веб-интерфейс для пользователей, дашборд, терминал |
| Database |
PostgreSQL |
Хранение данных: пользователи, агенты, сессии, логи |
Agent (клиентская часть)¶
| Компонент |
Технология |
Описание |
| Agent |
Rust (.exe) |
Запускается на Windows-машинах, подключается к API по WebSocket |
Схема взаимодействия¶
Browser Next.js Web NestJS API Rust Agent
| (app.reckue.com) | |
| --- HTTPS ---> | | |
| <-- HTML/JS -- | | |
| | --- REST/WS ---> | |
| | <-- JSON ------- | |
| | | <-- WebSocket --- |
| | | --- Commands ---> |
| | | |
| | | --- PostgreSQL |
| | | (72.56.119.162) |
-
Browser ↔ Next.js Web (
app.reckue.com) — HTTPS, отрисовка интерфейса
-
Next.js Web ↔ NestJS API — REST (данные) + WebSocket (реалтайм)
-
NestJS API ↔ Rust Agent — WebSocket (управление сессиями, команды, вывод)
-
NestJS API ↔ PostgreSQL — ORM (TypeORM), хранение данных
Серверы¶
| IP |
Роль |
Домен |
ОС |
176.53.162.120 |
Git (Gitea) |
git.reckue.com |
Ubuntu 24.04 |
72.56.119.246 |
Deploy (API + Web) |
app.reckue.com |
Ubuntu |
72.56.119.162 |
PostgreSQL |
— |
Ubuntu |
Стек технологий¶
| Слой |
Технология |
| Frontend |
Next.js (React, TypeScript) |
| Backend |
NestJS (TypeScript) |
| Agent |
Rust |
| Database |
PostgreSQL |
| Контейнеризация |
Docker, Docker Compose |
| Git-хостинг |
Gitea |
| CI/CD |
Gitea Actions (планируется) |