{
  "schemaVersion": "1.0",
  "path": "/guias/vps/hospedar-api-nodejs-vps-brasil",
  "url": "https://streethosting.com.br/guias/vps/hospedar-api-nodejs-vps-brasil",
  "markdownUrl": "https://streethosting.com.br/guias/vps/hospedar-api-nodejs-vps-brasil.md",
  "jsonUrl": "https://streethosting.com.br/guias/vps/hospedar-api-nodejs-vps-brasil.json",
  "title": "Como hospedar API Node.js em VPS no Brasil",
  "description": "Deploy de API Express ou Fastify em VPS brasileira: PM2, Nginx reverse proxy, SSL, firewall e dimensionamento para produção.",
  "category": "vps",
  "topics": [
    "deploy"
  ],
  "difficulty": "intermediario",
  "datePublished": "2026-06-09",
  "dateModified": "2026-06-09",
  "readingMinutes": 2,
  "h1": "Como hospedar API Node.js em VPS no Brasil",
  "excerpt": "API em produção pede process manager, proxy reverso, HTTPS e monitoramento. VPS no Brasil reduz latência para apps e integrações voltadas ao mercado local.",
  "author": "Equipe StreetHosting",
  "wordCount": 329,
  "categoryLabel": "VPS",
  "topicLabels": [
    "Deploy e execução de apps"
  ],
  "primaryKeyword": "vps nodejs brasil",
  "secondaryKeywords": [
    "hospedar api nodejs",
    "express vps brasil",
    "deploy nodejs pm2"
  ],
  "toc": [
    {
      "id": "por-que-vps-local",
      "label": "Por que VPS local"
    },
    {
      "id": "stack-recomendada",
      "label": "Stack recomendada"
    },
    {
      "id": "deploy-passo-a-passo",
      "label": "Deploy passo a passo"
    },
    {
      "id": "ryzen-ou-xeon",
      "label": "Ryzen ou Xeon para API"
    }
  ],
  "faqs": [
    {
      "question": "2 GB de RAM bastam para API pequena?",
      "answer": "Sim para Express/Fastify enxutos com poucas dependências e tráfego moderado. Deixe margem se usar Prisma, Redis ou workers na mesma VM."
    },
    {
      "question": "Preciso de Docker?",
      "answer": "Não obrigatoriamente. PM2 + Nginx resolve bem para um serviço. Docker ajuda quando há vários microserviços ou CI/CD padronizado."
    },
    {
      "question": "API e banco na mesma VPS?",
      "answer": "Aceitável em MVP. Em produção, separe banco gerenciado ou segunda VPS Xeon quando carga de disco e conexões crescer."
    }
  ],
  "howToSteps": [
    {
      "name": "Provisionar VPS",
      "text": "Escolha Ubuntu LTS, 2 vCPU e 2 a 4 GB RAM para APIs modestas. Público BR: datacenter em São Paulo."
    },
    {
      "name": "Instalar Node.js LTS",
      "text": "Use nvm ou repositório oficial. Fixe versão major igual ao ambiente de desenvolvimento."
    },
    {
      "name": "Configurar PM2",
      "text": "pm2 start dist/server.js --name api-prod. Ative pm2 startup para restart após reboot."
    },
    {
      "name": "Nginx como reverse proxy",
      "text": "Proxy para localhost:3000, headers X-Forwarded-For e timeout alinhado ao p95 da API."
    },
    {
      "name": "Certificado SSL",
      "text": "Certbot com Let's Encrypt. Renovação automática via cron ou timer systemd."
    },
    {
      "name": "Firewall e monitoramento",
      "text": "UFW liberando 22, 80 e 443. Alertas de uptime externos complementam logs PM2."
    }
  ],
  "relatedProducts": [
    "https://streethosting.com.br/vps/ryzen",
    "https://streethosting.com.br/vps/xeon",
    "https://streethosting.com.br/vps"
  ],
  "relatedGuides": [
    "https://streethosting.com.br/guias/vps/ssh-seguro-vps-linux",
    "https://streethosting.com.br/guias/vps/firewall-ufw-vps-ubuntu",
    "https://streethosting.com.br/guias/bots-discord/deploy-bot-discord-nodejs-pm2"
  ],
  "content": {
    "format": "markdown",
    "body": "> **Resposta rápida**\n>\n> Para **hospedar API Node.js no Brasil**, use VPS Ubuntu em São Paulo, **PM2** para processo, **Nginx** como proxy reverso, **SSL Let's Encrypt** e **UFW** no firewall. APIs leves começam com 2 vCPU e 2 a 4 GB RAM.\n\n## Por que VPS local\n\nLatência importa para apps mobile, integrações PIX e webhooks que conversam com serviços brasileiros. Hospedar em São Paulo reduz round trip em dezenas de milissegundos comparado a região dos EUA. Usuários percebem como app mais responsivo, mesmo sem mudar código.\n\n## Stack recomendada\n\n- Node.js LTS + PM2 (restart automático)\n- Nginx terminando TLS e cache estático leve\n- Variáveis de ambiente fora do repositório Git\n- Logrotate ou PM2 log management\n\nPM2 em bots Discord segue lógica parecida. Veja [deploy bot Discord com PM2](https://streethosting.com.br/guias/bots-discord/deploy-bot-discord-nodejs-pm2).\n\n## Deploy passo a passo\n\n1. Contrate VPS e configure SSH seguro.\n2. Instale Node.js, clone repositório, npm ci --production.\n3. Exporte PORT, DATABASE_URL e secrets via .env protegido.\n4. pm2 start e pm2 save; valide healthcheck /health.\n5. Configure Nginx + Certbot; teste curl externo em HTTPS.\n6. Ative UFW e monitore restarts por 7 dias.\n\n- [ ] Healthcheck respondendo 200\n- [ ] Rate limit na borda se API pública\n- [ ] Backup de .env e schema de banco\n- [ ] Alerta se PM2 restart > 3 por hora\n\n## Ryzen ou Xeon para API\n\nAPIs I/O bound com muitas conexões simultâneas se saem bem em [VPS Xeon](https://streethosting.com.br/vps/xeon). Workloads com WebSocket pesado ou single thread intenso podem preferir [VPS Ryzen](https://streethosting.com.br/vps/ryzen). Compare [planos VPS](https://streethosting.com.br/vps) e reforce segurança com [firewall UFW](https://streethosting.com.br/guias/vps/firewall-ufw-vps-ubuntu) e [SSH seguro](https://streethosting.com.br/guias/vps/ssh-seguro-vps-linux).\n\n> **Dica**\n>\n> Registre p95 de latência antes e depois do deploy. Número concreto convence stakeholders mais que \"está rápido\"."
  }
}
