FROM oven/bun:1.2.19-alpine AS base # 依赖缓存阶段 FROM base AS dep WORKDIR /app COPY package.json bun.lock ./ RUN bun install --frozen-lockfile --registry https://registry.npmmirror.com # 构建阶段 FROM base AS build WORKDIR /app COPY --from=dep /app/node_modules ./node_modules COPY . . RUN bun run build # 生产阶段 FROM base AS run WORKDIR /app COPY --from=build /app/.next/standalone ./ COPY --from=build /app/.next/static ./.next/static COPY --from=build /app/public ./public USER bun EXPOSE 3000/tcp ENTRYPOINT [ "bun", "server.js" ]