| | |
| |
|
| | FROM oven/bun:1 AS base |
| |
|
| | |
| | FROM base AS deps |
| | WORKDIR /app |
| |
|
| | |
| | COPY --link package.json bun.lockb* ./ |
| | RUN bun install --frozen-lockfile |
| |
|
| | |
| | FROM base AS builder |
| | WORKDIR /app |
| | COPY --from=deps --link /app/node_modules ./node_modules |
| | COPY --link . . |
| |
|
| | |
| | |
| | |
| |
|
| | RUN bun run build |
| |
|
| | |
| | FROM base AS runner |
| | WORKDIR /app |
| |
|
| | ENV NODE_ENV production |
| | |
| | |
| |
|
| | RUN \ |
| | addgroup --system --gid 1001 nodejs; \ |
| | adduser --system --uid 1001 nextjs |
| |
|
| | COPY --from=builder --link /app/public ./public |
| |
|
| | |
| | COPY --from=builder --link --chown=1001:1001 /app/.next/standalone ./ |
| | COPY --from=builder --link --chown=1001:1001 /app/.next/static ./.next/static |
| |
|
| | USER nextjs |
| |
|
| | EXPOSE 3000 |
| |
|
| | ENV PORT 3000 |
| | ENV HOSTNAME 0.0.0.0 |
| | CMD ["bun", "run", "server.js"] |