Интерфейс категорий и фильтров для семи PostgreSQL-баз: Auto, Avito, Cian, Golden Apple, Mvideo, Market и WB.
- Скопируйте
.env.exampleв.env.localи укажитеDATABASE_URL. - Установите зависимости:
npm ci. - Запустите приложение:
npm run dev.
Фронтенд будет доступен на http://localhost:5174, API — на
http://localhost:8787.
Приложение целиком работает в Yandex Cloud:
- Vite-интерфейс и Express API собираются в один Docker-образ.
- Образ хранится в Yandex Container Registry.
- Yandex Serverless Containers отдаёт интерфейс и API с одного HTTPS-origin.
DATABASE_URLхранится в Yandex Lockbox и передаётся ревизии как секрет.- Все семь каталогов читаются из Yandex Managed Service for PostgreSQL.
- GitHub Actions получает временный IAM-токен через Workload Identity Federation; постоянные ключи сервисного аккаунта в GitHub не хранятся.
Workflow .github/workflows/image-yandex-cloud.yml при изменении main собирает
образ linux/amd64 и загружает теги с SHA коммита и latest в Container Registry.
CI имеет только право на загрузку образов. Ревизия Serverless Container создаётся
в Yandex Cloud CLI, где к ней подключается фиксированная версия секрета Lockbox;
значение секрета через GitHub не проходит.