Files
RuvdsIpCheck/README.md
Codex 8ec7ee2ec9
Some checks failed
CI / build-test (push) Has been cancelled
CI / containers (push) Has been cancelled
Add distributed F# monitoring platform
2026-08-09 18:22:24 +03:00

43 lines
1.9 KiB
Markdown
Raw Permalink 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.

# IpCheck
Распределённая система мониторинга IP-адресов на F#. Каждый агент представляет отдельную локацию, синхронизирует общий список IP с центральным сервером, выполняет Ping и TCP-проверки SSH/RDP и отправляет результаты обратно.
## Состав первого среза
- F# ASP.NET Core API;
- F# Worker Service для агентов локаций;
- общие контракты и доменная модель;
- схема PostgreSQL;
- Docker-образы сервера и агента;
- Docker Compose для локального окружения;
- CI для сборки, тестов и публикации контейнеров;
- существующий интерфейс в `app/` сохранён как визуальный прототип до переноса на Fable.
## Локальная проверка
```bash
dotnet restore IpCheck.slnx
dotnet build IpCheck.slnx -c Release
dotnet run --project tests/IpCheck.UnitTests/IpCheck.UnitTests.fsproj -c Release
```
Запуск сервера:
```bash
dotnet run --project src/IpCheck.Server/IpCheck.Server.fsproj
```
API будет доступен по адресу, указанному ASP.NET Core в консоли. Проверка состояния: `GET /healthz`.
## Docker Compose
Скопируйте `deploy/.env.example` в `deploy/.env`, замените пароль и запустите:
```bash
docker compose --env-file deploy/.env -f deploy/docker-compose.yml up -d --build
```
## Следующий этап
Перевести репозитории IP, локаций и результатов с временного in-memory хранилища на PostgreSQL, добавить регистрацию агентов по одноразовому токену и начать Fable-админку.