This commit is contained in:
Keven 2025-12-09 15:14:49 -03:00
parent 0ec57bd6f8
commit 26f0016813
2 changed files with 20 additions and 30 deletions

View file

@ -1,43 +1,27 @@
# ============================
# STAGE 1 Build da aplicação
# STAGE ÚNICO Desenvolvimento
# ============================
FROM node:20-alpine AS builder
FROM node:20-alpine
# Diretório de trabalho
WORKDIR /app
# Copia os arquivos de dependência
COPY package*.json ./
RUN npm ci
# Instala dependências (mantém cache eficiente)
RUN npm install
# Copia todo o código do projeto
COPY . .
# Garante build de produção
ENV NODE_ENV=production
RUN npm run build
# =============================
# STAGE 2 Produção (Runner)
# =============================
FROM node:20-alpine AS runner
WORKDIR /app
# Força modo produção
ENV NODE_ENV=production
# Define variáveis de ambiente de desenvolvimento
ENV NODE_ENV=development
ENV NEXT_TELEMETRY_DISABLED=1
ENV WATCHPACK_POLLING=true
# Copia somente o necessário
COPY --from=builder /app/public ./public
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/package*.json ./
COPY --from=builder /app/next.config.* ./
COPY --from=builder /app/node_modules ./node_modules
# Segurança: executa como usuário não-root
RUN addgroup -S nodejs && adduser -S nextjs -G nodejs
USER nextjs
# Porta padrão
# Expõe a porta padrão do Next.js
EXPOSE 3000
# Comando fixo (força produção)
CMD ["sh", "-c", "NODE_ENV=production npm start"]
# Executa o servidor de desenvolvimento com hot reload
CMD ["npm", "run", "dev"]

View file

@ -1 +1,7 @@
# saas_app
Criar envlocal para usar variaveis de ambiente no em desenvolvimento
NEXT_PUBLIC_ORIUS_APP_STATE=GO
NEXT_PUBLIC_ORIUS_APP_API_URL=<http://localhost:8000/>
NEXT_PUBLIC_ORIUS_APP_API_PREFIX=api/v1/
NEXT_PUBLIC_ORIUS_APP_API_CONTENT_TYPE=application/json