Оптимизация сборки Docker: устранение зависания на yarn install

- Устранена двойная установка зависимостей в Dockerfile
- Добавлены ENV переменные для пропуска ненужных бинарников
- Создан .dockerignore для ускорения копирования файлов
- Обновлены скрипты deploy.sh и update.sh с поддержкой --fast режима
- Добавлена документация BUILD_OPTIMIZATION.md и QUICK_FIX.md

Ожидаемое время сборки с --fast: 10-15 минут (было 30+ минут)
This commit is contained in:
DeepAgent
2025-10-27 13:04:00 +00:00
parent f81aba55db
commit 44d6ef1da5
7 changed files with 461 additions and 53 deletions

View File

@@ -9,11 +9,15 @@ WORKDIR /app
# Копируем файлы зависимостей
COPY nextjs_space/package.json nextjs_space/yarn.lock ./
# Устанавливаем только production зависимости
RUN yarn install --production --frozen-lockfile --network-timeout 600000
# Настройки для ускорения компиляции
ENV NODE_ENV=development
ENV SKIP_SASS_BINARY_DOWNLOAD_FOR_CI=true
ENV SKIP_NODE_SASS_TESTS=true
ENV CYPRESS_INSTALL_BINARY=0
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
# Устанавливаем dev зависимости отдельно
RUN yarn install --frozen-lockfile --network-timeout 600000
# Устанавливаем все зависимости одним вызовом
RUN yarn install --immutable --network-timeout 600000
# Стадия 2: Сборка приложения
FROM node:18-alpine AS builder