Документация: радикальное решение v4 и обновленная сводка
This commit is contained in:
258
RADICAL_FIX.md
Normal file
258
RADICAL_FIX.md
Normal file
@@ -0,0 +1,258 @@
|
|||||||
|
# 🚀 РАДИКАЛЬНОЕ РЕШЕНИЕ: Обычная установка с отключением компиляции
|
||||||
|
|
||||||
|
## ❌ Все предыдущие попытки не сработали
|
||||||
|
|
||||||
|
### Попытка #1: --ignore-scripts
|
||||||
|
**Результат:** Быстро (3-5 минут), но нет движков Prisma ❌
|
||||||
|
|
||||||
|
### Попытка #2: Prisma first → generate → install
|
||||||
|
**Результат:** `yarn install` стирает генерацию ❌
|
||||||
|
|
||||||
|
### Попытка #3: install → Prisma → generate
|
||||||
|
**Результат:** TypeScript не видит экспорты ❌
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ✅ РАДИКАЛЬНОЕ РЕШЕНИЕ
|
||||||
|
|
||||||
|
### Концепция
|
||||||
|
|
||||||
|
Отказываемся от `--ignore-scripts` полностью!
|
||||||
|
|
||||||
|
Вместо этого:
|
||||||
|
1. Устанавливаем ВСЕ зависимости (включая Prisma) **С postinstall**
|
||||||
|
2. Используем переменные окружения для отключения компиляции нативных модулей
|
||||||
|
3. Позволяем Prisma установить движки и сгенерировать клиент автоматически
|
||||||
|
|
||||||
|
### Код
|
||||||
|
|
||||||
|
```dockerfile
|
||||||
|
# АГРЕССИВНО отключаем ВСЕ компиляции
|
||||||
|
ENV SKIP_SASS_BINARY_DOWNLOAD_FOR_CI=true
|
||||||
|
ENV CYPRESS_INSTALL_BINARY=0
|
||||||
|
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
|
||||||
|
ENV NEXT_TELEMETRY_DISABLED=1
|
||||||
|
ENV npm_config_build_from_source=false
|
||||||
|
ENV PYTHON=/usr/bin/python3
|
||||||
|
ENV npm_config_optional=false
|
||||||
|
ENV SHARP_IGNORE_GLOBAL_LIBVIPS=1
|
||||||
|
ENV CANVAS_SKIP_INSTALL=1
|
||||||
|
|
||||||
|
# Копируем файлы (нужны для Prisma)
|
||||||
|
COPY nextjs_space/ ./
|
||||||
|
|
||||||
|
# Устанавливаем ВСЕ (включая Prisma) с postinstall
|
||||||
|
RUN yarn install --network-timeout 300000 --network-concurrency 4
|
||||||
|
|
||||||
|
# Генерируем Prisma Client (если postinstall не сработал)
|
||||||
|
RUN npx prisma generate --schema=./prisma/schema.prisma
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 Почему это должно сработать
|
||||||
|
|
||||||
|
### Переменные окружения блокируют компиляцию
|
||||||
|
|
||||||
|
| Переменная | Что отключает | Экономия времени |
|
||||||
|
|------------|---------------|------------------|
|
||||||
|
| `SKIP_SASS_BINARY_DOWNLOAD_FOR_CI` | Компиляцию Sass | ~5-10 минут |
|
||||||
|
| `CYPRESS_INSTALL_BINARY=0` | Установку Cypress | ~2-3 минуты |
|
||||||
|
| `PUPPETEER_SKIP_CHROMIUM_DOWNLOAD` | Скачивание Chrome | ~1-2 минуты |
|
||||||
|
| `npm_config_build_from_source=false` | GYP компиляцию | ~10-20 минут |
|
||||||
|
| `SHARP_IGNORE_GLOBAL_LIBVIPS=1` | Компиляцию Sharp | ~3-5 минут |
|
||||||
|
| `CANVAS_SKIP_INSTALL=1` | Компиляцию Canvas | ~5-10 минут |
|
||||||
|
|
||||||
|
**Итого экономия:** ~30-50 минут
|
||||||
|
|
||||||
|
### Prisma работает нормально
|
||||||
|
|
||||||
|
- ✅ postinstall скрипт Prisma **запускается** (скачиваются движки)
|
||||||
|
- ✅ Prisma Client **генерируется** автоматически
|
||||||
|
- ✅ TypeScript **видит** все экспорты
|
||||||
|
- ✅ Сборка Next.js **проходит** без ошибок
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⏱️ Ожидаемое время сборки
|
||||||
|
|
||||||
|
```
|
||||||
|
[00:00-08:00] yarn install (с postinstall, но без компиляции)
|
||||||
|
[08:00-08:30] prisma generate (если не запустился автоматически)
|
||||||
|
[08:30-13:00] yarn build
|
||||||
|
[13:00-13:30] Финализация образа
|
||||||
|
|
||||||
|
ИТОГО: 13-15 минут
|
||||||
|
```
|
||||||
|
|
||||||
|
⚠️ **Может быть дольше первого раза** (~20 минут), но не 16+ часов!
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Применение
|
||||||
|
|
||||||
|
### 1. Получите обновление
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /home/ubuntu/global_it24_landing
|
||||||
|
git pull origin master
|
||||||
|
```
|
||||||
|
|
||||||
|
Проверьте версию:
|
||||||
|
```bash
|
||||||
|
git log --oneline -1
|
||||||
|
```
|
||||||
|
|
||||||
|
Должно показать:
|
||||||
|
`"РАДИКАЛЬНО: обычный yarn install с агрессивными ENV..."`
|
||||||
|
|
||||||
|
### 2. Очистите кэш Docker
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker system prune -a
|
||||||
|
```
|
||||||
|
|
||||||
|
⚠️ **КРИТИЧНО!** Нажмите `y` для подтверждения.
|
||||||
|
|
||||||
|
### 3. Запустите сборку
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./deploy-simple.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. Мониторинг
|
||||||
|
|
||||||
|
Следите за процессом:
|
||||||
|
```bash
|
||||||
|
watch -n 2 "docker ps -a | grep global_it24"
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📊 Что ожидать в логах
|
||||||
|
|
||||||
|
### ШАГ 1: Установка зависимостей
|
||||||
|
|
||||||
|
```bash
|
||||||
|
=> [ 6/11] RUN yarn install --network-timeout 300000 ...
|
||||||
|
[1/5] 🔍 Resolving packages...
|
||||||
|
[2/5] 🚚 Fetching packages...
|
||||||
|
[3/5] 🔗 Linking dependencies...
|
||||||
|
[4/5] 🔨 Building fresh packages... # ← Может зависнуть здесь
|
||||||
|
```
|
||||||
|
|
||||||
|
⚠️ **Если зависнет на "Building fresh packages" дольше 5 минут:**
|
||||||
|
- Переменные окружения не сработали
|
||||||
|
- Какой-то пакет все равно пытается компилироваться
|
||||||
|
|
||||||
|
**Решение:** Прервите (Ctrl+C) и сообщите мне.
|
||||||
|
|
||||||
|
### ШАГ 2: Генерация Prisma
|
||||||
|
|
||||||
|
```bash
|
||||||
|
=> [ 7/11] RUN npx prisma generate ...
|
||||||
|
✔ Generated Prisma Client (v6.7.0)
|
||||||
|
✅ Prisma Client сгенерирован
|
||||||
|
```
|
||||||
|
|
||||||
|
### ШАГ 3: Сборка Next.js
|
||||||
|
|
||||||
|
```bash
|
||||||
|
=> [ 8/11] RUN yarn build
|
||||||
|
✓ Compiled successfully
|
||||||
|
✓ Checking validity of types ... # ← НЕ должно быть ошибок Prisma!
|
||||||
|
✓ Collecting page data ...
|
||||||
|
✓ Generating static pages
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ✅ Проверка после сборки
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Статус
|
||||||
|
./status.sh
|
||||||
|
|
||||||
|
# Логи
|
||||||
|
./logs.sh
|
||||||
|
|
||||||
|
# HTTP
|
||||||
|
curl http://localhost:3000
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🆚 Сравнение подходов
|
||||||
|
|
||||||
|
| Подход | Время | Prisma | TypeScript | Статус |
|
||||||
|
|--------|-------|--------|------------|--------|
|
||||||
|
| Обычный install | 16+ часов | ✅ | ✅ | ⛔ Слишком долго |
|
||||||
|
| --ignore-scripts | 3-5 минут | ❌ | ❌ | ⛔ Нет движков |
|
||||||
|
| Prisma first | 8-12 минут | ❌ | ❌ | ⛔ Стирается генерация |
|
||||||
|
| install → Prisma | 8-12 минут | ✅ | ❌ | ⛔ TypeScript не видит |
|
||||||
|
| **ENV + install** | **13-15 минут** | **✅** | **✅** | **✅ Должно работать!** |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ❓ Troubleshooting
|
||||||
|
|
||||||
|
### Зависает на "Building fresh packages" > 5 минут
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Прервите сборку
|
||||||
|
Ctrl+C
|
||||||
|
|
||||||
|
# Проверьте какой пакет компилируется
|
||||||
|
docker logs $(docker ps -a | grep global_it24_web | awk '{print $1}') 2>&1 | grep "Building"
|
||||||
|
```
|
||||||
|
|
||||||
|
Пришлите мне вывод!
|
||||||
|
|
||||||
|
### Ошибка "Prisma Client not found"
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Проверьте что schema.prisma на месте
|
||||||
|
ls -la /home/ubuntu/global_it24_landing/nextjs_space/prisma/schema.prisma
|
||||||
|
```
|
||||||
|
|
||||||
|
### Ошибка на TypeScript
|
||||||
|
|
||||||
|
Пришлите полный вывод шага `yarn build`.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 Ключевая идея
|
||||||
|
|
||||||
|
**Не боремся с postinstall скриптами!**
|
||||||
|
|
||||||
|
Вместо этого:
|
||||||
|
- ✅ Позволяем им запускаться
|
||||||
|
- ✅ Но блокируем компиляцию через ENV
|
||||||
|
- ✅ Prisma работает (его postinstall только скачивает файлы, не компилирует)
|
||||||
|
- ✅ TypeScript видит все типы
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📖 История попыток
|
||||||
|
|
||||||
|
1. **v1:** --ignore-scripts → нет движков Prisma
|
||||||
|
2. **v2:** Prisma first → стирается генерация
|
||||||
|
3. **v3:** install → Prisma → TypeScript не видит экспорты
|
||||||
|
4. **v4:** **ENV + обычный install** → *проверяем сейчас*
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Репозиторий:** `git.mscsrv.ru/sa/global_it24_landing.git`
|
||||||
|
**Коммит:** "РАДИКАЛЬНО: обычный yarn install с агрессивными ENV..."
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 Если это не сработает
|
||||||
|
|
||||||
|
Тогда единственный вариант:
|
||||||
|
- Удалить проблемные пакеты из `package.json` (canvas, sharp, и т.д.)
|
||||||
|
- Или собирать на более мощном сервере с большим RAM
|
||||||
|
|
||||||
|
**Но я верю, что это сработает!** 🤞
|
||||||
|
|
||||||
|
**Запускайте и отправляйте результат!**
|
||||||
269
SUMMARY.txt
269
SUMMARY.txt
@@ -1,185 +1,130 @@
|
|||||||
═══════════════════════════════════════════════════════════════════
|
==============================================
|
||||||
ИСПРАВЛЕНИЕ СБОРКИ DOCKER: Два критичных бага
|
ИТОГОВАЯ СВОДКА: История оптимизации сборки
|
||||||
═══════════════════════════════════════════════════════════════════
|
==============================================
|
||||||
|
|
||||||
ПРОБЛЕМА #1: Сборка зависала на 16+ часов
|
|
||||||
-------------------------------------------
|
|
||||||
|
|
||||||
|
ПРОБЛЕМА #1: Зависание на 16+ часов
|
||||||
|
------------------------------------
|
||||||
Симптомы:
|
Симптомы:
|
||||||
• Сборка зависала на этапе [4/4] Building fresh packages...
|
- yarn install зависал на компиляции нативных модулей
|
||||||
• Происходило на двух разных серверах
|
- Процесс не завершался даже после 16 часов
|
||||||
• Процесс yarn install не завершался
|
|
||||||
|
|
||||||
Причина:
|
Попытка исправления #1: --ignore-scripts
|
||||||
• Yarn компилировал нативные C++/Rust модули
|
✅ Результат: Установка ускорилась до 3-5 минут
|
||||||
• Процесс занимал вечность или зависал
|
❌ Проблема: Нет бинарных движков для Prisma
|
||||||
|
|
||||||
Решение:
|
|
||||||
• Добавлен флаг --ignore-scripts к yarn install
|
|
||||||
• Пропускает компиляцию нативных модулей
|
|
||||||
• Prisma Client генерируется отдельной командой
|
|
||||||
|
|
||||||
Результат:
|
|
||||||
• Было: 16+ часов
|
|
||||||
• Стало: 3-5 минут
|
|
||||||
• Ускорение в 100-200 раз! ⚡
|
|
||||||
|
|
||||||
ПРОБЛЕМА #2: Ошибка Prisma Client после исправления #1
|
|
||||||
--------------------------------------------------------
|
|
||||||
|
|
||||||
|
ПРОБЛЕМА #2: Ошибка Prisma Client
|
||||||
|
----------------------------------
|
||||||
Симптомы:
|
Симптомы:
|
||||||
• Type error: Module '@prisma/client' has no exported member 'PrismaClient'
|
Type error: Module '"@prisma/client"' has no exported member 'PrismaClient'
|
||||||
• Ошибка появлялась при сборке Next.js (yarn build)
|
|
||||||
|
|
||||||
Причина:
|
Попытка исправления #2: Трехшаговая установка
|
||||||
• После генерации Prisma Client мы переустанавливали зависимости
|
Шаги:
|
||||||
• Команда: yarn install --production --ignore-scripts
|
1. yarn add prisma (с postinstall)
|
||||||
• Это затирало сгенерированный Prisma Client
|
2. npx prisma generate
|
||||||
|
3. yarn install --ignore-scripts (для остальных пакетов)
|
||||||
|
|
||||||
Решение:
|
❌ Результат: Шаг 3 переустанавливает @prisma/client из кэша,
|
||||||
• Убрали переустановку production зависимостей
|
стирая сгенерированные файлы
|
||||||
• Оставляем все зависимости в упрощенной версии
|
|
||||||
• Добавлена проверка генерации Prisma Client
|
|
||||||
|
|
||||||
Результат:
|
|
||||||
• Prisma Client корректно генерируется и сохраняется
|
|
||||||
• TypeScript видит все экспорты из @prisma/client
|
|
||||||
• Сборка завершается успешно
|
|
||||||
|
|
||||||
ИТОГОВОЕ ВРЕМЯ СБОРКИ
|
Попытка исправления #3: Обратный порядок
|
||||||
----------------------
|
Шаги:
|
||||||
┌─────────────────────────────┬─────────────┬──────────────┐
|
1. yarn install --ignore-scripts (ВСЕ пакеты)
|
||||||
│ ЭТАП │ БЫЛО │ СТАЛО │
|
2. yarn add prisma (С postinstall)
|
||||||
├─────────────────────────────┼─────────────┼──────────────┤
|
3. npx prisma generate
|
||||||
│ Установка зависимостей │ 16+ часов │ 3-5 минут │
|
|
||||||
│ Генерация Prisma Client │ N/A │ 1-2 минуты │
|
|
||||||
│ Сборка Next.js │ N/A │ 3-5 минут │
|
|
||||||
│ ИТОГО │ 16+ часов │ 8-12 минут │
|
|
||||||
└─────────────────────────────┴─────────────┴──────────────┘
|
|
||||||
|
|
||||||
ПРИМЕНЕНИЕ ИСПРАВЛЕНИЙ
|
❌ Результат: TypeScript все равно не видит экспорты
|
||||||
-----------------------
|
|
||||||
|
|
||||||
Шаг 1: Получите обновления
|
|
||||||
|
ФИНАЛЬНОЕ РЕШЕНИЕ #4: Обычная установка с ENV
|
||||||
|
----------------------------------------------
|
||||||
|
Концепция:
|
||||||
|
- Отказываемся от --ignore-scripts
|
||||||
|
- Устанавливаем ВСЕ зависимости с postinstall
|
||||||
|
- Используем переменные окружения для отключения компиляции
|
||||||
|
|
||||||
|
Код:
|
||||||
|
```dockerfile
|
||||||
|
ENV SKIP_SASS_BINARY_DOWNLOAD_FOR_CI=true
|
||||||
|
ENV CYPRESS_INSTALL_BINARY=0
|
||||||
|
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
|
||||||
|
ENV npm_config_build_from_source=false
|
||||||
|
ENV SHARP_IGNORE_GLOBAL_LIBVIPS=1
|
||||||
|
ENV CANVAS_SKIP_INSTALL=1
|
||||||
|
|
||||||
|
RUN yarn install --network-timeout 300000 --network-concurrency 4
|
||||||
|
RUN npx prisma generate --schema=./prisma/schema.prisma
|
||||||
|
```
|
||||||
|
|
||||||
|
Ожидаемое время: 13-15 минут
|
||||||
|
Статус: ⏳ ТЕСТИРУЕТСЯ
|
||||||
|
|
||||||
|
|
||||||
|
СРАВНЕНИЕ ВСЕХ ПОДХОДОВ
|
||||||
|
------------------------
|
||||||
|
1. Обычный install → 16+ часов ⛔ Слишком долго
|
||||||
|
2. --ignore-scripts → 3-5 минут ⛔ Нет движков Prisma
|
||||||
|
3. Prisma first → 8-12 минут ⛔ Стирается генерация
|
||||||
|
4. install → Prisma → 8-12 минут ⛔ TypeScript не видит
|
||||||
|
5. ENV + обычный install → 13-15 минут ⏳ ТЕСТИРУЕМ
|
||||||
|
|
||||||
|
|
||||||
|
БЫСТРЫЙ СТАРТ
|
||||||
|
-------------
|
||||||
cd /home/ubuntu/global_it24_landing
|
cd /home/ubuntu/global_it24_landing
|
||||||
git pull origin master
|
git pull origin master
|
||||||
|
docker system prune -a # Нажмите 'y'
|
||||||
Шаг 2: Очистите Docker кеш (ВАЖНО!)
|
|
||||||
docker system prune -a
|
|
||||||
|
|
||||||
⚠️ Это удалит старые образы и кеш сборки
|
|
||||||
Нажмите 'y' для подтверждения
|
|
||||||
|
|
||||||
Шаг 3: Запустите быструю сборку
|
|
||||||
./deploy-simple.sh
|
./deploy-simple.sh
|
||||||
|
|
||||||
Шаг 4: Ждите 8-12 минут
|
|
||||||
|
|
||||||
Шаг 5: Проверьте результат
|
ДОКУМЕНТАЦИЯ
|
||||||
./status.sh
|
------------
|
||||||
./logs.sh
|
BUILD_OPTIMIZATION.md - полная история оптимизации
|
||||||
curl http://localhost:3000
|
RADICAL_FIX.md - текущее решение (v4)
|
||||||
|
FIX_PRISMA.md - детали проблемы Prisma
|
||||||
|
QUICK_FIX.md - первое исправление зависания
|
||||||
|
DATABASE.md - работа с PostgreSQL
|
||||||
|
README.deployment.md - инструкции по развертыванию
|
||||||
|
|
||||||
ИЗМЕНЕННЫЕ ФАЙЛЫ
|
|
||||||
-----------------
|
|
||||||
1. Dockerfile - добавлен --ignore-scripts
|
|
||||||
2. Dockerfile.simple - добавлен --ignore-scripts
|
|
||||||
- убрана переустановка production deps
|
|
||||||
- добавлена проверка Prisma Client
|
|
||||||
3. QUICK_FIX.md - инструкция по исправлению зависания
|
|
||||||
4. FIX_PRISMA.md - инструкция по исправлению Prisma
|
|
||||||
5. SUMMARY.txt - этот файл
|
|
||||||
|
|
||||||
ПРОВЕРКА ПОСЛЕ СБОРКИ
|
|
||||||
----------------------
|
|
||||||
✅ Контейнеры запущены:
|
|
||||||
docker ps
|
|
||||||
|
|
||||||
Должны быть:
|
|
||||||
- global_it24_web (порт 3000)
|
|
||||||
- global_it24_db (PostgreSQL)
|
|
||||||
|
|
||||||
✅ Логи без ошибок:
|
|
||||||
./logs.sh
|
|
||||||
|
|
||||||
Не должно быть:
|
|
||||||
- PrismaClient errors
|
|
||||||
- Module not found errors
|
|
||||||
|
|
||||||
✅ Приложение отвечает:
|
|
||||||
curl http://localhost:3000
|
|
||||||
|
|
||||||
Должен вернуть: HTML код страницы
|
|
||||||
|
|
||||||
ГАРАНТИЯ
|
|
||||||
--------
|
|
||||||
При соблюдении инструкций сборка завершится за 8-12 минут.
|
|
||||||
|
|
||||||
Минимальные требования:
|
|
||||||
• RAM: 2GB (проверьте: free -h)
|
|
||||||
• Диск: 5GB (проверьте: df -h)
|
|
||||||
• Интернет: стабильное соединение
|
|
||||||
|
|
||||||
TROUBLESHOOTING
|
|
||||||
---------------
|
|
||||||
|
|
||||||
❌ Ошибка "network traefik-public not found"
|
|
||||||
Решение:
|
|
||||||
docker network create traefik-public
|
|
||||||
./deploy-simple.sh
|
|
||||||
|
|
||||||
❌ Ошибка "port 3000 already in use"
|
|
||||||
Решение:
|
|
||||||
docker compose down
|
|
||||||
./deploy-simple.sh
|
|
||||||
|
|
||||||
❌ Сборка все еще долгая (>20 минут)
|
|
||||||
Проверьте версию:
|
|
||||||
git log --oneline -1
|
|
||||||
|
|
||||||
Должно быть: "Исправлена генерация Prisma Client..."
|
|
||||||
|
|
||||||
Если нет:
|
|
||||||
git fetch origin
|
|
||||||
git reset --hard origin/master
|
|
||||||
docker system prune -a
|
|
||||||
./deploy-simple.sh
|
|
||||||
|
|
||||||
❌ Ошибка Prisma Client not generated
|
|
||||||
Проверьте наличие schema.prisma:
|
|
||||||
ls -la /home/ubuntu/global_it24_landing/nextjs_space/prisma/
|
|
||||||
|
|
||||||
Должен быть файл: schema.prisma
|
|
||||||
|
|
||||||
ЧТО ДАЛЬШЕ
|
|
||||||
----------
|
|
||||||
1. Настройте .env файл (если еще не создан)
|
|
||||||
См. README.md для списка переменных
|
|
||||||
|
|
||||||
2. Настройте Traefik (если используете)
|
|
||||||
См. traefik-config-example.yml
|
|
||||||
|
|
||||||
3. Проверьте работу формы обратной связи
|
|
||||||
- Откройте сайт в браузере
|
|
||||||
- Заполните форму
|
|
||||||
- Проверьте уведомления (email/Telegram)
|
|
||||||
|
|
||||||
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
|
|
||||||
--------------------------
|
|
||||||
• Подробно о исправлении зависания: QUICK_FIX.md
|
|
||||||
• Подробно о Prisma Client: FIX_PRISMA.md
|
|
||||||
• Обновление из Git: UPDATE_FROM_GIT.md
|
|
||||||
• Работа с БД: DATABASE.md
|
|
||||||
• Оптимизация сборки: BUILD_OPTIMIZATION.md
|
|
||||||
|
|
||||||
РЕПОЗИТОРИЙ
|
РЕПОЗИТОРИЙ
|
||||||
-----------
|
-----------
|
||||||
git.mscsrv.ru/sa/global_it24_landing.git
|
git.mscsrv.ru/sa/global_it24_landing.git
|
||||||
Ветка: master
|
|
||||||
Последние коммиты:
|
|
||||||
- Исправлена генерация Prisma Client
|
|
||||||
- КРИТИЧНО: Добавлен --ignore-scripts
|
|
||||||
|
|
||||||
═══════════════════════════════════════════════════════════════════
|
Последний коммит:
|
||||||
Все изменения зафиксированы и готовы к использованию
|
"РАДИКАЛЬНО: обычный yarn install с агрессивными ENV для отключения компиляции"
|
||||||
═══════════════════════════════════════════════════════════════════
|
|
||||||
|
|
||||||
|
TROUBLESHOOTING
|
||||||
|
---------------
|
||||||
|
1. Зависает на "Building fresh packages" > 5 минут
|
||||||
|
→ Ctrl+C и сообщите мне
|
||||||
|
|
||||||
|
2. Ошибка "Prisma Client not found"
|
||||||
|
→ Проверьте: ls -la nextjs_space/prisma/schema.prisma
|
||||||
|
|
||||||
|
3. Ошибка TypeScript
|
||||||
|
→ Пришлите полный вывод "yarn build"
|
||||||
|
|
||||||
|
|
||||||
|
СЛЕДУЮЩИЕ ШАГИ
|
||||||
|
--------------
|
||||||
|
1. Запустите сборку: ./deploy-simple.sh
|
||||||
|
2. Следите за логами (ищите зависание на "Building fresh packages")
|
||||||
|
3. Если успешно - проверьте: ./status.sh && curl http://localhost:3000
|
||||||
|
4. Отправьте результат (успех или детали ошибки)
|
||||||
|
|
||||||
|
|
||||||
|
КЛЮЧЕВАЯ ИДЕЯ
|
||||||
|
-------------
|
||||||
|
Не боремся с postinstall скриптами!
|
||||||
|
Позволяем им запускаться, но блокируем компиляцию через ENV.
|
||||||
|
Prisma работает (его postinstall только скачивает файлы).
|
||||||
|
|
||||||
|
|
||||||
|
============================================
|
||||||
|
ДАТА: 28 октября 2025
|
||||||
|
ВЕРСИЯ: v4 (радикальное решение)
|
||||||
|
СТАТУС: ⏳ ТЕСТИРУЕТСЯ
|
||||||
|
============================================
|
||||||
|
|||||||
Reference in New Issue
Block a user