# ----------------------------
# 构建阶段
# ----------------------------
FROM oven/bun:latest AS builder

# 设置工作目录
ARG ROOT=app
WORKDIR /${ROOT}

COPY . .

# 替换 package.json 中的 workspace:* 为 *
RUN sed -i 's/"workspace:\*"/"*"/g' package.json

# 安装依赖
RUN bun install -f

# 构建
RUN bun -bun run build

# ----------------------------
# 运行阶段
# ----------------------------
FROM oven/bun:latest AS runner

ARG ROOT=app
WORKDIR /${ROOT}

# 只复制构建产物
COPY --from=builder /${ROOT}/.next/standalone ./
COPY --from=builder /${ROOT}/.next/static ./.next/static

# 开放端口
EXPOSE 3000

# 启动服务
CMD ["bun", "server.js"]
