This commit is contained in:
Keven 2025-12-09 15:45:32 -03:00
parent 3eb0bd6f0e
commit e24a35709b
2 changed files with 12 additions and 10 deletions

View file

@ -23,15 +23,13 @@ WORKDIR /app
ENV NODE_ENV=production
ENV NEXT_TELEMETRY_DISABLED=1
# Copia o standalone e os assets estáticos
COPY --from=builder /app/.next/standalone ./ # traz server.js e a app standalone
# Copia apenas o necessário do build
COPY --from=builder /app/.next/standalone ./
COPY --from=builder /app/.next/static ./.next/static
COPY --from=builder /app/public ./public
# (Opcional, mas útil para dependências em runtime)
COPY --from=builder /app/package*.json ./
# Cria usuário não-root e dá permissão
# Corrige permissões (para cache de imagens, etc.)
RUN addgroup -S nodejs && adduser -S nextjs -G nodejs \
&& mkdir -p .next/cache/images \
&& chown -R nextjs:nodejs /app
@ -40,5 +38,5 @@ USER nextjs
EXPOSE 3000
# Aqui é o ponto chave: NÃO usar "next start"
# Executa o servidor standalone gerado pelo Next
CMD ["node", "server.js"]

View file

@ -1,16 +1,20 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
// Gera build autônomo para rodar com "node server.js"
output: 'standalone',
// Configurações gerais
reactStrictMode: true,
poweredByHeader: false,
compress: true,
// Desativa ESLint e TypeScript durante o build de produção
// Desativa verificações no build de produção
eslint: { ignoreDuringBuilds: true },
typescript: { ignoreBuildErrors: true },
// Força runtime Node.js (para evitar Edge Runtime)
experimental: { runtime: 'nodejs' },
// ✅ Removido o experimental.runtime (incompatível no Next 15)
// O runtime agora é definido por rota ou via middleware (Edge/Node.js),
// mas por padrão, tudo roda em Node.js quando "output: standalone" está ativo.
};
module.exports = nextConfig;
module.exports = nextConfig;