# ---- Сборка ---- FROM oven/bun:1 AS builder WORKDIR /app # Копируем только нужное для установки COPY package.json bun.lock ./ COPY turbo.json ./ COPY biome.jsonc ./ # Копируем исходники COPY packages ./packages COPY tooling ./tooling COPY apps ./apps # Устанавливаем зависимости RUN bun install --frozen-lockfile # Исправляем путь в globals.css (заменяем @/ на ../) RUN sed -i 's|@/styles/elevation.css|../styles/elevation.css|g' apps/editor/app/globals.css # Создаём символическую ссылку, чтобы папка styles была доступна из apps/editor RUN ln -s /app/styles /app/apps/editor/styles # Собираем RUN bun run build # ---- Продакшен ---- FROM oven/bun:1 WORKDIR /app # Копируем собранные артефакты COPY --from=builder /app/packages ./packages COPY --from=builder /app/tooling ./tooling COPY --from=builder /app/apps ./apps COPY --from=builder /app/node_modules ./node_modules COPY --from=builder /app/package.json ./ COPY --from=builder /app/bun.lock ./ WORKDIR /app/apps/editor EXPOSE 3002 CMD ["bun", "run", "start"]