|
|
||
|---|---|---|
| app | ||
| bin | ||
| db/migrations | ||
| docker | ||
| public | ||
| scripts | ||
| storage | ||
| templates | ||
| tests | ||
| .env.example | ||
| .gitignore | ||
| PLAN.md | ||
| README.md | ||
| composer.json | ||
| composer.lock | ||
| docker-compose.yml | ||
| phinx.php | ||
| phpunit.xml | ||
| Проект - Домовой.md | ||
| Техническое задание - Домовой.md | ||
README.md
Домовой
Self-hosted система инвентаризации домашней и малой серверной инфраструктуры.
Что делает
- Сканирует заданные локальные сетевые диапазоны
- Находит устройства и предлагает создать карточки
- После добавления SSH-доступа — read-only deep scan хоста
- Находит сервисы, Docker-контейнеры, nginx vhost-ы, cron-задачи, backup-подсказки
- Создаёт карточки сервисов и связи между устройствами и сервисами
Стек
- PHP 8.3, Slim Framework 4, PDO
- MariaDB
- Bootstrap 5.3, htmx
- Docker Compose
- Phinx (миграции)
Предупреждение
Сканируйте только свои сети. Приложение read-only и ничего не меняет на удалённых хостах.
Установка
git clone <repo>
cd domovoy
cp .env.example .env
# Отредактируйте .env: задайте APP_SECRET, ENCRYPTION_KEY, DB_PASSWORD.
# Если 8080 занят, измените DOMOVOY_HTTP_PORT.
./scripts/bootstrap.sh
# Откройте http://localhost:${DOMOVOY_HTTP_PORT:-8080}
Запуск
./scripts/bootstrap.sh
# Скрипт поднимает контейнеры, ждёт БД, применяет новые миграции
# и запускает scan worker.
Сетевое сканирование выполняется не web-запросом, а отдельным контейнером
domovoy-worker. Если scan job висит в pending, проверьте worker:
docker compose ps worker
docker compose logs -f worker
Для первого пользователя откройте /setup в браузере или выполните:
docker compose exec app php bin/console setup:user admin 'change-this-password'
Миграции
docker compose exec app php vendor/bin/phinx migrate
docker compose exec app php vendor/bin/phinx rollback
docker compose exec app php vendor/bin/phinx create MigrationName
Обычный запуск через ./scripts/bootstrap.sh уже выполняет phinx migrate.
Ручной запуск нужен только для обслуживания или отладки.
Smoke test
./scripts/check.sh
Структура
domovoy/
app/ # Controllers, Services, Repositories, Middleware
db/migrations/ # Phinx миграции
public/ # Точка входа, assets
templates/ # PHP шаблоны
bin/ # CLI команды
docker/ # Dockerfile, nginx config
storage/ # логи, scan results
Лицензия
MIT