saas_app/Dockerfile

33 lines
800 B
Docker

# ===========================
# 1º Estágio - Base
# ===========================
FROM node:20-alpine AS base
# Define diretório de trabalho
WORKDIR /app
# Instala dependências básicas do sistema (útil para pacotes nativos, ex: sharp)
RUN apk add --no-cache libc6-compat bash
# ===========================
# 2º Estágio - Desenvolvimento
# ===========================
FROM base AS dev
# Define variável de ambiente para desenvolvimento
ENV NODE_ENV=development
# Copia apenas arquivos de dependências primeiro para otimizar o cache
COPY package*.json ./
# Instala TODAS as dependências (inclusive devDependencies)
RUN npm install
# Copia todo o código do projeto
COPY . .
# Expõe a porta padrão do Next.js
EXPOSE 3000
# Ativa recarga automática e debug
CMD ["npm", "run", "dev"]