Como hospedar sua própria IA: servidor dedicado, Open WebUI e Ollama na prática

Rocketseat

Rocketseat

5 min de leitura
https://prod-files-secure.s3.us-west-2.amazonaws.com/08f749ff-d06d-49a8-a488-9846e081b224/a3920c94-1add-48af-a609-4fc9812066ac/hospedar-ia-servidor-ollama-open-webui-n8n.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB466SCNXFZSE%2F20260620%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20260620T022014Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEAIaCXVzLXdlc3QtMiJHMEUCIQD0gkru1e9LEC22JBSpVBu59h01BEjdMASpcvA8EhsDvQIgV5%2By4ow7bn2bqgpe4xNElakwp9xFRSG4KnAjCONoQRUqiAQIy%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FARAAGgw2Mzc0MjMxODM4MDUiDGABbyotbsZmB%2BqwFSrcA4DY1lOyiLGCpSLeQ6SO03ROWolXf8XIosraSoxIMcI1lh6ULBtuLaKN6YSAXj%2B9eBlCGdlETshGxTg8%2B3nmWLTCo1smbPV%2FSt65307VvZrmDGNqz87E58tcxdTE7sTvsSGDZaKkkAcDaGeEyoSn0lec3es1u4EO3iCr7uDk756j9NSCyz4qzEO3XZ87fOsCxIEP%2B%2FCi%2BjkoshdCMxPvr%2BXm9YPnvav4lvfSOYSXnANchdsl6t%2FXEl5wg4BYV57faMELK4htUcrTwrZMa1LUgtFl4HwOiRRYebTdoYdffLHn%2BdtV92cWVYUGLZswXP9I1U6Pxv6ZKpF2HNUl4f0MD411S5Won1mn1YdwBCniJhemS%2F5HQ8YPYKjHOIIiI8F6xt8ijd1T5jtIBb%2BuYrZ451noYLicoqx5cm4Y%2FOCE%2Bemj90ackgnG10TU%2FL3us0irKmRn%2BHfHSM6cW4JuKM%2FFBTuazDGDoZ0ATzgRDEaRWPVfjda%2BFphM54MbsStpkQtLXdwo54clu%2BbU7XafBUpaaMv%2F7bpf%2BgytQZfg%2FEXOmufTSv2zfSw%2B9NZtXu1wQ5HOwbdIpY%2F%2BJs0r6VEHGt1KqwiLHFHwKsvkdY5R%2FhJUHVzAXx2AyUA2X71WkK9zMO%2Fd19EGOqUB0d3wPx7BqqzgvN5%2FcsVu3cVZJ5ZF1jn5NwG3YPKKam%2BvKmJ3alQv0TPndiW5mdcF8hpusDRUsBqioD8ff8t88myrA6bPal5VwkBRMiaFwcYreUrRaLS2UipCzOQMnaiwPNrJGQHY8x%2B0JBO9pyHd%2BhZBgTHu0QnhbCgsYBQsyUHUjB7UNVmCnkW4BFPynC4opFJXYQzvM06PW9zuVg2VgiVx2zLj&X-Amz-Signature=74eb91cb4daafdd7e140359f3a17da55332f8007a7ac350aff6831dbf4bd1c2e&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject
Fala, Dev! 💜
Se você trabalha com desenvolvimento ou marketing (Growth e CRO), já percebeu que as taxas de assinatura de Inteligência Artificial e os limites de tokens são um freio de mão puxado na sua produtividade.
No nosso vídeo mais recente, detalhamos o processo de hospedar um ecossistema de LLM do zero. O objetivo? Escapar das mensalidades, ter tokens ilimitados e garantir privacidade absoluta dos dados da sua empresa.

O Setup completo em vídeo

Antes de mergulhar na arquitetura técnica abaixo, dá o play para ver a instalação e configuração acontecendo na prática direto no terminal:
Video preview

1. Infraestrutura: por que um servidor dedicado?

Muitos tutoriais recomendam instâncias em nuvem compartilhadas (VPS simples). Mas quando falamos de IA em produção, a história muda. Neste setup, optamos por um Servidor Dedicado (4 vCPU e 16GB de RAM).
A justificativa técnica é controle e isolamento:
  • Sem vizinhos barulhentos: Você tem 100% do hardware à disposição.
  • IP Limpo: Você evita que seu IP caia em blacklists de segurança por culpa de outros usuários da rede. Isso é vital para garantir que suas requisições e webhooks funcionem sem bloqueios ao integrar a IA com ferramentas de automação self-hosted, como o n8n.
Para gerenciar tudo, usamos a dupla dinâmica:
  1. Ollama: O motor que roda silenciosamente no servidor Linux, executando os modelos localmente.
  1. Open WebUI: A interface gráfica que entrega uma experiência fluida (estilo ChatGPT), gerenciando chats, documentos e permissões.

2. A instalação e o gargalo da CPU

Toda a instalação foi via terminal Linux. O "pulo do gato" para o Open WebUI foi utilizar o UV (gerenciador de pacotes Python escrito em Rust), garantindo uma instalação absurdamente rápida e um ambiente otimizado.
Porém, encaramos a realidade do hardware corporativo padrão: nosso servidor não possui placa de vídeo (GPU). Toda a IA roda na CPU. O resultado: modelos otimizados, como o Gemma 3, rodam bem para textos simples, mas engasgam para gerar código HTML/CSS complexo.

3. O "Hack" de performance: Gemini 2.5 Flash

A sacada arquitetural do Open WebUI é permitir a conexão com APIs externas. Plugamos a API do Gemini 2.5 Flash dentro da interface. Isso nos deu um modelo absurdamente potente para gerar código e textos pesados, mantendo a experiência centralizada na nossa interface privada.
Com essa performance destravada, criamos Workspaces (agentes personalizados).

4. Segurança Avançada: Blindando seus Webhooks

Como você administra a própria instância e detém o controle total da infraestrutura, a segurança é responsabilidade sua. Um ecossistema privado permite que você conecte o Open WebUI a diversas outras ferramentas de automação (como uma instância self-hosted do n8n, por exemplo) via Webhooks.
É importante que essa comunicação não pode ficar exposta. A regra de ouro da engenharia de infraestrutura é garantir que a rota do Webhook exija um Bearer Token customizado.
Ao configurar o endpoint de comunicação, você deve exigir um cabeçalho HTTP de autorização (Authorization: Bearer SEU_TOKEN_SECRETO). Isso blinda o seu servidor. Qualquer requisição externa que tente acessar seus modelos de IA, ler seus documentos no RAG ou acionar automações sem esse token receberá um erro 401 Unauthorized. É a garantia de que sua CPU e seus dados estão protegidos contra injeções de prompts ou acessos indevidos.

A arquitetura bônus: Open WebUI+ n8n + Blog (Next.js)

Não basta gerar o texto; ele precisa ir para o ar sem atrito. Aqui está o fluxo técnico para conectar seu Open WebUI com o n8n e publicar artigos otimizados para SEO direto no seu Front-end.

Passo 1: o gatilho no Open WebUI (Custom Actions)

O Open WebUI possui um recurso chamado Custom Actions. Você cria um botão que aparece embaixo das respostas da IA. Ao clicar em "Publicar no Blog", o sistema faz um HTTP POST enviando o conteúdo (Markdown) para o n8n.

Passo 2: a porta de entrada no n8n

Na sua instância self-hosted do n8n, a jornada começa com um nó de Webhook oficial.
Dica de Segurança: Como você administra a própria instância, garanta que a rota do Webhook exija um Bearer Token customizado.

Subindo sua infraestrutura de automação

Ainda não tem o n8n rodando em um servidor próprio? Assista ao nosso guia de como estruturar essa VPS usando o Coolify:
Video preview

Passo 3: o tratamento de SEO (Code Node)

Um artigo focado em tráfego orgânico não pode ir para o ar de qualquer jeito. Usamos um Code Node no n8n para:
  1. Gerar um slug amigável e extrair uma Meta Description curta.
  1. Injetar componentes específicos (como ícones Phosphor ou padrões Tailwind) caso o seu Front-end exija.

Passo 4: a publicação no Next.js com revalidação de cache

Com o JSON lapidado, o n8n faz a chamada final para a rota de API do seu Next.js Server Component.
Se você usa cache agressivo rodando na Vercel Edge Functions, é crucial que o seu endpoint receba o POST, salve no banco de dados e dispare a função revalidatePath(). Assim, o cache é rompido instantaneamente e o SEO já entra em ação.

O próximo nível

O mercado não busca apenas quem sabe "usar" a IA no browser; busca desenvolvedores capazes de orquestrar servidores, integrar APIs e construir automações de ponta a ponta.
Com a Assinatura Rocketseat, você aprende a arquitetar projetos reais — do Back-end escalável ao Front-end de alta performanc, para nunca ficar refém de infraestruturas limitadas.
 

Conheça o Rocketseat Para Empresas

Oferecemos soluções personalizadas para empresas de todos os portes.

Rocketseat

Rocketseat

Ecossistema de educação contínua referência em programação e Inteligência Artificial.

Artigos_

Explore conteúdos relacionados

Descubra mais artigos que complementam seu aprendizado e expandem seu conhecimento.

Imagem contendo uma carta e um símbolo de check
NewsletterReceba conteúdos inéditos e novidades gratuitamente