From 2f39ce555cd7ab62a9468e7b65404a9a85d7e090 Mon Sep 17 00:00:00 2001 From: markosbenitez Date: Mon, 8 Jun 2026 20:44:46 -0300 Subject: [PATCH] solucionado los build args --- .dockerignore | 10 ++++++++++ Dockerfile | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..8301017 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +.git +.next +node_modules +.env +.env.* +!.env.example +*.md +sprints/ +supabase/ +.claude/ diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3b838e1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,43 @@ +FROM node:20-alpine AS base + +# ── Dependencias ────────────────────────────────────────────────────────────── +FROM base AS deps +RUN apk add --no-cache libc6-compat +WORKDIR /app +COPY package.json package-lock.json ./ +RUN npm ci + +# ── Build ───────────────────────────────────────────────────────────────────── +FROM base AS builder +WORKDIR /app +COPY --from=deps /app/node_modules ./node_modules +COPY . . + +# Las variables NEXT_PUBLIC_* se hornean en el bundle en build time. +# Pasarlas como build args desde Dokploy (Environment → Build Args). +ARG NEXT_PUBLIC_SUPABASE_URL +ARG NEXT_PUBLIC_SUPABASE_ANON_KEY +ENV NEXT_PUBLIC_SUPABASE_URL=$NEXT_PUBLIC_SUPABASE_URL +ENV NEXT_PUBLIC_SUPABASE_ANON_KEY=$NEXT_PUBLIC_SUPABASE_ANON_KEY + +RUN npm run build + +# ── Runner ──────────────────────────────────────────────────────────────────── +FROM base AS runner +WORKDIR /app + +ENV NODE_ENV=production + +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 ["node", "server.js"]