Modificar Dockerfile

This commit is contained in:
Bxio 2025-07-04 13:26:39 +00:00
parent d3107cb1a1
commit 618e769dbb

View File

@ -1,17 +1,35 @@
# Usa a imagem oficial do Nginx
FROM nginx:alpine
# Etapa 1: Build
FROM node:20-slim AS builder
# Remove configuração default do Nginx
RUN rm /etc/nginx/conf.d/default.conf
# Define diretório de trabalho
WORKDIR /app
# Copia a configuração customizada do Nginx para dentro do container
COPY nginx.conf /etc/nginx/conf.d/
# Copiar package.json e lock
COPY package*.json ./
# Copia os arquivos estáticos para a pasta padrão do Nginx
COPY ./build /usr/share/nginx/html
# Instalar dependências
RUN npm install
# Expõe a porta 80 para acesso externo
EXPOSE 80
# Copiar resto do código para dentro da imagem
COPY . .
# Comando padrão para rodar o Nginx em primeiro plano
CMD ["nginx", "-g", "daemon off;"]
# Build de produção
RUN npm run build
# Etapa 2: Production runner
FROM node:20-slim AS runner
WORKDIR /app
# Copiar só o necessário
COPY --from=builder /app/package*.json ./
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/public ./public
COPY --from=builder /app/next.config.js ./
COPY --from=builder /app/node_modules ./node_modules
# Definir a porta que o Next.js vai usar
EXPOSE 3000
# Comando default
CMD ["npm", "start"]