Files
global_it24_landing/SUMMARY.txt

131 lines
4.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
==============================================
ИТОГОВАЯ СВОДКА: История оптимизации сборки
==============================================
ПРОБЛЕМА #1: Зависание на 16+ часов
------------------------------------
Симптомы:
- yarn install зависал на компиляции нативных модулей
- Процесс не завершался даже после 16 часов
Попытка исправления #1: --ignore-scripts
✅ Результат: Установка ускорилась до 3-5 минут
❌ Проблема: Нет бинарных движков для Prisma
ПРОБЛЕМА #2: Ошибка Prisma Client
----------------------------------
Симптомы:
Type error: Module '"@prisma/client"' has no exported member 'PrismaClient'
Попытка исправления #2: Трехшаговая установка
Шаги:
1. yarn add prisma (с postinstall)
2. npx prisma generate
3. yarn install --ignore-scripts (для остальных пакетов)
❌ Результат: Шаг 3 переустанавливает @prisma/client из кэша,
стирая сгенерированные файлы
Попытка исправления #3: Обратный порядок
Шаги:
1. yarn install --ignore-scripts (ВСЕ пакеты)
2. yarn add prisma (С postinstall)
3. npx prisma generate
❌ Результат: TypeScript все равно не видит экспорты
ФИНАЛЬНОЕ РЕШЕНИЕ #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
git pull origin master
docker system prune -a # Нажмите 'y'
./deploy-simple.sh
ДОКУМЕНТАЦИЯ
------------
BUILD_OPTIMIZATION.md - полная история оптимизации
RADICAL_FIX.md - текущее решение (v4)
FIX_PRISMA.md - детали проблемы Prisma
QUICK_FIX.md - первое исправление зависания
DATABASE.md - работа с PostgreSQL
README.deployment.md - инструкции по развертыванию
РЕПОЗИТОРИЙ
-----------
git.mscsrv.ru/sa/global_it24_landing.git
Последний коммит:
"РАДИКАЛЬНО: обычный 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 (радикальное решение)
СТАТУС: ⏳ ТЕСТИРУЕТСЯ
============================================