diff --git a/Dockerfile b/Dockerfile index 24adb88..8e4040a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,8 +14,10 @@ ENV NPM_CONFIG_TIMEOUT=600000 # Copia dependências e instala apenas as necessárias COPY package.json package-lock.json ./ -RUN npm ci --omit=dev --legacy-peer-deps \ - && npm install typescript --no-save +RUN npm ci --omit=dev --legacy-peer-deps + +# ✅ Instala TypeScript globalmente (visível em todo build) +RUN npm install -g typescript # Copia o restante do código COPY . . @@ -35,7 +37,7 @@ RUN apk add --no-cache nano curl tzdata # Define timezone padrão ENV TZ=America/Sao_Paulo -# Cria usuário não-root para segurança +# Cria usuário não-root RUN addgroup -g 1001 nodejs && adduser -u 1001 -G nodejs -s /bin/sh -D nodejs # Copia apenas o necessário para execução @@ -43,16 +45,15 @@ COPY --from=builder --chown=nodejs:nodejs /app/.next/standalone ./ COPY --from=builder --chown=nodejs:nodejs /app/.next/static ./.next/static COPY --from=builder --chown=nodejs:nodejs /app/public ./public -# Define variáveis de ambiente USER nodejs + ENV NODE_ENV=production ENV PORT=3000 ENV HOSTNAME=0.0.0.0 -# Expõe porta e healthcheck automático EXPOSE 3000 + HEALTHCHECK --interval=10s --timeout=3s --retries=3 \ CMD curl -f http://localhost:3000/ || exit 1 -# Inicia o servidor standalone CMD ["node", "server.js"]