204 lines
6.2 KiB
Markdown
204 lines
6.2 KiB
Markdown
# OpenParsersFERAV
|
||
|
||
## Описание
|
||
|
||
Приложение для отслеживания позиций товаров в поисковой выдаче.
|
||
|
||
## Установка и запуск через Docker
|
||
|
||
### Предварительные требования
|
||
|
||
- Docker
|
||
- Docker Compose
|
||
- База данных PostgreSQL (внешний сервер)
|
||
|
||
### Подготовка к запуску
|
||
|
||
1. Создайте файл `.env` в корне проекта со следующим содержимым:
|
||
|
||
```
|
||
# URL для подключения к вашей PostgreSQL базе данных
|
||
DATABASE_URL="postgresql://username:password@host:5432/dbname"
|
||
```
|
||
|
||
Замените `username`, `password`, `host` и `dbname` на ваши реальные данные для подключения к БД.
|
||
|
||
2. Подготовьте директории для хранения изображений:
|
||
|
||
```bash
|
||
mkdir -p public/images/cache
|
||
```
|
||
|
||
### Сборка и запуск
|
||
|
||
1. Отредактируйте файл `stack.env` с необходимыми настройками:
|
||
|
||
```
|
||
# Укажите версию тега образа
|
||
TAG=v1.0.0
|
||
# Порт приложения на хосте (на сервере доступен на 3004)
|
||
APP_PORT=3000
|
||
# Окружение (production, staging, development)
|
||
NODE_ENV=production
|
||
# URL базы данных, например PostgreSQL
|
||
DATABASE_URL=postgresql://user:password@host:port/dbname
|
||
# Выполнять ли миграции при запуске (true/false)
|
||
RUN_MIGRATIONS=false
|
||
```
|
||
|
||
2. Соберите Docker-образ:
|
||
|
||
```bash
|
||
docker-compose build
|
||
```
|
||
|
||
3. Запустите приложение:
|
||
|
||
```bash
|
||
docker-compose up -d
|
||
```
|
||
|
||
Приложение будет доступно по адресу: http://localhost:3004
|
||
|
||
### Проверка состояния
|
||
|
||
Для проверки работоспособности приложения и подключения к БД:
|
||
|
||
```bash
|
||
curl http://localhost:3004/api/health
|
||
```
|
||
|
||
### Остановка приложения
|
||
|
||
```bash
|
||
docker-compose down
|
||
```
|
||
|
||
## Развертывание на сервере
|
||
|
||
1. Клонируйте репозиторий на ваш сервер:
|
||
|
||
```bash
|
||
git clone https://github.com/yourname/openparsersferav.git
|
||
cd openparsersferav
|
||
```
|
||
|
||
2. Отредактируйте файл `stack.env` с настройками подключения к БД
|
||
|
||
3. Запустите приложение:
|
||
|
||
```bash
|
||
docker-compose up -d
|
||
```
|
||
|
||
## Обновление приложения
|
||
|
||
```bash
|
||
git pull
|
||
docker-compose down
|
||
docker-compose build
|
||
docker-compose up -d
|
||
```
|
||
|
||
## Решение проблемы с libssl в Docker
|
||
|
||
Если вы столкнулись с ошибкой:
|
||
```
|
||
Error [PrismaClientInitializationError]: Unable to require(`/app/src/generated/prisma/libquery_engine-linux-musl.so.node`).
|
||
The Prisma engines do not seem to be compatible with your system.
|
||
Details: Error loading shared library libssl.so.1.1: No such file or directory
|
||
```
|
||
|
||
В версии v1.1.0 Docker-образа внесены следующие изменения:
|
||
|
||
1. В `Dockerfile` вместо устаревших библиотек glibc используется пакет `gcompat`, что обеспечивает совместимость с Alpine Linux 3.17+ и OpenSSL 3.0
|
||
2. Упрощен процесс установки зависимостей, так как Prisma 5.9.0 уже имеет встроенную поддержку OpenSSL 3.0
|
||
3. Добавлена генерация Prisma клиента перед запуском в контейнере
|
||
4. Добавлена поддержка автоматического запуска миграций БД (опционально)
|
||
|
||
При обновлении проекта достаточно выполнить:
|
||
```
|
||
docker-compose down
|
||
docker-compose build
|
||
docker-compose up -d
|
||
```
|
||
|
||
## Резервное копирование данных
|
||
|
||
Данные хранятся во внешней базе данных, поэтому резервное копирование необходимо выполнять на стороне базы данных.
|
||
|
||
## Контакты
|
||
|
||
Для вопросов и предложений: your.email@example.com
|
||
|
||
# OpenParsersFeraV - Парсер позиций товаров Wildberries
|
||
|
||
Приложение для анализа позиций товаров в поисковой выдаче Wildberries. Позволяет отслеживать позиции своих товаров и товаров конкурентов в разных городах и визуализировать результаты.
|
||
|
||
## Возможности
|
||
|
||
- Поиск товаров по артикулам на Wildberries
|
||
- Анализ позиций товаров в разных городах
|
||
- Сравнение с товарами конкурентов
|
||
- Визуализация данных в виде графиков и таблиц
|
||
- Отслеживание истории изменения позиций
|
||
|
||
## Технологии
|
||
|
||
- Next.js 15
|
||
- React 19
|
||
- TypeScript
|
||
- Tailwind CSS
|
||
- Framer Motion
|
||
- Recharts
|
||
|
||
## Установка и запуск
|
||
|
||
1. Клонировать репозиторий:
|
||
|
||
```bash
|
||
git clone https://github.com/yourusername/openparsersferav.git
|
||
cd openparsersferav
|
||
```
|
||
|
||
2. Установить зависимости:
|
||
|
||
```bash
|
||
npm install
|
||
```
|
||
|
||
3. Запустить сервер разработки:
|
||
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
4. Открыть в браузере:
|
||
|
||
```
|
||
http://localhost:3000
|
||
```
|
||
|
||
## API
|
||
|
||
Приложение использует следующие API:
|
||
|
||
- `/api/parser` - Парсинг данных с Wildberries
|
||
- `/api/history` - Работа с историей поисков
|
||
|
||
## Структура проекта
|
||
|
||
- `/src/app` - Основной код приложения
|
||
- `/components` - Компоненты React
|
||
- `/api` - API маршруты
|
||
- `/public` - Статические файлы
|
||
|
||
## TODO
|
||
|
||
- [ ] Добавить авторизацию
|
||
- [ ] Интегрировать с PostgreSQL для хранения истории
|
||
- [ ] Добавить экспорт данных в Excel
|
||
- [ ] Реализовать анализ ключевых слов
|
||
|
||
# scan-sphere
|