From 4a7ce9342a51e52d518d5f5dccc90fcbaec3316e Mon Sep 17 00:00:00 2001 From: Taken Date: Fri, 5 Sep 2025 13:07:12 +0200 Subject: [PATCH] Updated docker build file --- Dockerfile | 30 +++++++++++++++++++++--------- next.config.ts | 1 + 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/Dockerfile b/Dockerfile index dab7b1b..a50d966 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,32 @@ -FROM oven/bun:alpine +FROM oven/bun AS base +FROM base AS deps WORKDIR /app -RUN apk add --no-cache libc6-compat -COPY package.json bun.lock ./ -RUN bun i --frozen-lockfile +COPY package.json bun.lock* ./ +RUN bun i --no-save --frozen-lockfile + +FROM base AS builder +WORKDIR /app +COPY --from=deps /app/node_modules ./node_modules COPY . . ENV NEXT_TELEMETRY_DISABLED=1 -ENV NODE_ENV=production ENV DOCKER=1 RUN bun run build -RUN addgroup --system --gid 1001 nodejs && adduser --system --uid 1001 nextjs && chown -R nextjs:nodejs . +FROM base AS runner +WORKDIR /app + +ENV NEXT_TELEMETRY_DISABLED=1 +ENV NODE_ENV=production \ + PORT=3000 \ + HOSTNAME="0.0.0.0" +RUN addgroup --system --gid 1001 nodejs && adduser --system --uid 1001 nextjs + +# COPY --from=builder /app/public ./public +COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./ +COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static USER nextjs EXPOSE 3000 -ENV PORT=3000 -ENV HOSTNAME="0.0.0.0" -CMD ["bun", "start"] +CMD ["bun", "./server.js"] diff --git a/next.config.ts b/next.config.ts index f295845..d33e7c0 100644 --- a/next.config.ts +++ b/next.config.ts @@ -1,6 +1,7 @@ import type { NextConfig } from "next" const nextConfig: NextConfig = { + output: "standalone", eslint: { ignoreDuringBuilds: true },