# ---- Базовый образ с Bun ---- FROM oven/bun:1 AS builder WORKDIR /app # Копируем весь проект COPY . . # Устанавливаем зависимости RUN bun install # Явно добавляем типы для Bun (если их нет в package.json) RUN bun add -d @types/bun # Проблема: TypeScript не видит локальный пакет @pascal/typescript-config # Копируем его вручную в node_modules, чтобы резолвился RUN mkdir -p node_modules/@pascal && cp -r packages/typescript-config node_modules/@pascal/ # Также можно поправить tsconfig, если нужно (но не обязательно после копирования) # RUN sed -i 's|"extends": "@pascal/typescript-config/react-library.json"|"extends": "../../typescript-config/react-library.json"|g' packages/core/tsconfig.json || true # Сборка через Turbo RUN bun run build # ---- Продакшен образ ---- FROM node:20-alpine AS runner WORKDIR /app ENV NODE_ENV=production ENV PORT=3002 # Копируем собранное приложение и зависимости COPY --from=builder /app/apps/editor/.next /app/apps/editor/.next COPY --from=builder /app/apps/editor/public /app/apps/editor/public COPY --from=builder /app/apps/editor/package.json /app/apps/editor/package.json COPY --from=builder /app/node_modules /app/node_modules COPY --from=builder /app/package.json /app/package.json WORKDIR /app/apps/editor EXPOSE 3002 CMD ["npx", "next", "start"]