Исправление Prisma: сначала все с --ignore-scripts, затем только Prisma с postinstall
This commit is contained in:
@@ -16,30 +16,32 @@ COPY nextjs_space/package.json nextjs_space/yarn.lock ./
|
||||
# Копируем prisma схему (нужна для генерации клиента)
|
||||
COPY nextjs_space/prisma ./prisma
|
||||
|
||||
# Оптимизация: отключаем проблемные бинарники и компиляции
|
||||
# Оптимизация: отключаем проблемные бинарники
|
||||
ENV SKIP_SASS_BINARY_DOWNLOAD_FOR_CI=true
|
||||
ENV CYPRESS_INSTALL_BINARY=0
|
||||
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
|
||||
ENV NEXT_TELEMETRY_DISABLED=1
|
||||
|
||||
# ШАГ 1: Устанавливаем ТОЛЬКО Prisma (с postinstall - быстро, ~30 сек)
|
||||
RUN yarn add prisma@6.7.0 @prisma/client@6.7.0 --exact --network-timeout 300000
|
||||
# ШАГ 1: Устанавливаем ВСЕ зависимости БЕЗ postinstall скриптов (быстро!)
|
||||
RUN yarn install --ignore-scripts --network-timeout 300000 && \
|
||||
echo "✅ Зависимости установлены (без компиляции)"
|
||||
|
||||
# ШАГ 2: Генерируем Prisma Client
|
||||
RUN npx prisma generate --schema=./prisma/schema.prisma && \
|
||||
echo "✅ Prisma Client сгенерирован" && \
|
||||
ls -la node_modules/.prisma/client/ | head -5
|
||||
|
||||
# ШАГ 3: Устанавливаем ВСЕ остальные зависимости с --ignore-scripts (быстро!)
|
||||
# При этом Prisma уже установлен и не будет переустановлен
|
||||
RUN yarn install --network-timeout 300000 --ignore-scripts --prefer-offline
|
||||
# ШАГ 2: Устанавливаем ТОЛЬКО Prisma С postinstall (для скачивания движков)
|
||||
# Это перезапишет установку из шага 1, но уже с движками
|
||||
RUN yarn add prisma@6.7.0 @prisma/client@6.7.0 --exact --network-timeout 300000 && \
|
||||
echo "✅ Prisma установлен с бинарными движками"
|
||||
|
||||
# Копируем остальные файлы
|
||||
COPY nextjs_space/ ./
|
||||
|
||||
# ШАГ 3: Генерируем Prisma Client
|
||||
RUN npx prisma generate --schema=./prisma/schema.prisma && \
|
||||
echo "✅ Prisma Client сгенерирован"
|
||||
|
||||
# Финальная проверка
|
||||
RUN test -d node_modules/.prisma/client && \
|
||||
test -f node_modules/.prisma/client/index.js && \
|
||||
test -f node_modules/@prisma/client/index.js && \
|
||||
echo "✅ Prisma Client готов к работе"
|
||||
|
||||
# Переменные окружения для сборки
|
||||
|
||||
Reference in New Issue
Block a user