From 0ad55e2be9a89c3d1f3f220a39b8064a1226fcd1 Mon Sep 17 00:00:00 2001 From: Alex Date: Wed, 25 Jun 2025 11:36:36 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B2=D0=B0=D1=88=D0=B5=20=D1=81=D0=BE=D0=BE?= =?UTF-8?q?=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BA=D0=BE=D0=BC=D0=BC?= =?UTF-8?q?=D0=B8=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 59 ++----------------- backend/.gitignore | 1 + .../037_seed_rpc_and_auth_tokens.sql.env | 21 +++++++ 3 files changed, 26 insertions(+), 55 deletions(-) create mode 100644 backend/db/migrations/037_seed_rpc_and_auth_tokens.sql.env diff --git a/README.md b/README.md index c78d991..78109b3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # DApp-for-Business -Бизнес-платформа для работы с блокчейн и интеграцией ИИ. +Приложение для бизнеса ## Требования @@ -17,22 +17,11 @@ git clone https://github.com/yourusername/DApp-for-Business.git cd DApp-for-Business ``` -2. Настройте переменные окружения: -```bash -# Создайте файлы .env из примеров -cp backend/.env.example backend/.env -cp frontend/.env.example frontend/.env - -# Отредактируйте файлы .env с вашими настройками -nano backend/.env -nano frontend/.env -``` - -3. Запустите скрипт установки: +2. Запустите скрипт установки: ```bash ./setup.sh -4. Выполните миграции изнутри контейнера backend: +3. Выполните миграции изнутри контейнера backend: ``` docker exec -e NODE_ENV=migration dapp-backend yarn migrate @@ -73,44 +62,4 @@ docker compose down # Остановка сервисов и удаление томов docker compose down -v -``` - -## Безопасность - -По умолчанию проект настроен с базовыми учетными данными для разработки. Перед использованием в продакшене: - -1. **Измените все пароли и ключи в .env файлах** -2. **Не публикуйте .env файлы в репозитории** (они добавлены в .gitignore) -3. **Обновите SESSION_SECRET для защиты сессий** -4. **Используйте безопасные пароли для базы данных** -5. **Настройте SSL/TLS для продакшен-окружения** - -## Переменные окружения - -Основные переменные, которые следует настроить: - -- `DB_USER`, `DB_PASSWORD` - учетные данные для базы данных -- `SESSION_SECRET` - секрет для шифрования сессий -- `PRIVATE_KEY` - приватный ключ для подписи транзакций -- `EMAIL_*` - настройки почтового сервера -- `TELEGRAM_BOT_TOKEN` - токен для Telegram бота - -## Примечания - -- Загрузка модели qwen2.5:7b может занять некоторое время в зависимости от скорости интернета -- Для использования GPU Ollama требуются установленные драйверы NVIDIA и nvidia-container-toolkit - -## Важно! Если в контейнерах нет доступа к интернету - -1. Откройте Docker Desktop → Settings → Docker Engine. -2. Добавьте строку: - "dns": ["8.8.8.8", "1.1.1.1"] - Пример: - { - ... - "dns": ["8.8.8.8", "1.1.1.1"] - } -3. Нажмите "Apply & Restart". -4. Перезапустите приложение: - docker compose down - docker compose up -d \ No newline at end of file +``` \ No newline at end of file diff --git a/backend/.gitignore b/backend/.gitignore index 62294e8..d1cd4bb 100644 --- a/backend/.gitignore +++ b/backend/.gitignore @@ -16,6 +16,7 @@ yarn-error.log* .env.development.local .env.test.local .env.production.local +.sql.env # Кэши и временные файлы .cache/ diff --git a/backend/db/migrations/037_seed_rpc_and_auth_tokens.sql.env b/backend/db/migrations/037_seed_rpc_and_auth_tokens.sql.env new file mode 100644 index 0000000..87f2621 --- /dev/null +++ b/backend/db/migrations/037_seed_rpc_and_auth_tokens.sql.env @@ -0,0 +1,21 @@ +-- Миграция: наполнение таблиц rpc_providers и auth_tokens начальными значениями + +-- Добавление RPC-провайдеров +INSERT INTO rpc_providers (network_id, rpc_url, chain_id) +VALUES + ('bsc', 'https://bsc-mainnet.nodereal.io/v1/56dec8028bae4f26b76099a42dae2b52', 56), + ('ethereum', 'https://eth-mainnet.nodereal.io/v1/56dec8028bae4f26b76099a42dae2b52', 1), + ('arbitrum', 'https://arb1.arbitrum.io/rpc', 42161), + ('polygon', 'https://polygon.drpc.org', 137), + ('sepolia', 'https://eth-sepolia.nodereal.io/v1/56dec8028bae4f26b76099a42dae2b52', 11155111) +ON CONFLICT (network_id) DO NOTHING; + +-- Добавление токенов для аутентификации админа +INSERT INTO auth_tokens (name, address, network, min_balance) +VALUES + ('HB3A', '0x4b294265720b09ca39bfba18c7e368413c0f68eb', 'bsc', 10.0), + ('HB3A', '0xd95a45fc46a7300e6022885afec3d618d7d3f27c', 'ethereum', 10.0), + ('test2', '0xef49261169B454f191678D2aFC5E91Ad2e85dfD8', 'sepolia', 50.0), + ('HB3A', '0x351f59de4fedbdf7601f5592b93db3b9330c1c1d', 'polygon', 10.0), + ('HB3A', '0xdCe769b847a0a697239777D0B1C7dd33b6012ba0', 'arbitrum', 100.0) +ON CONFLICT (address, network) DO NOTHING; \ No newline at end of file