~/ / Artigos sobre IA / LLMs locais em uma VPS / Open WebUI em uma VPS: rode-o no Docker e conecte-o ao Ollama
Open WebUI em uma VPS: rode-o no Docker e conecte-o ao Ollama
Uma janela de chat no navegador é a maneira mais fácil de usar um modelo que roda no seu próprio servidor. O Open WebUI é uma dessas interfaces, e a documentação dele mostra como iniciá-lo com Docker e como conectá-lo ao Ollama. Este artigo acompanha, passo a passo, o início rápido e os guias de conexão oficiais, e indica onde os dois guias descrevem a conexão de maneiras diferentes.
Publicado: · 5 min de leitura · Conferido com a documentação oficial do Open WebUI em 2026-10-26. Comandos, tags de imagem e configurações mudam entre versões, então confirme-os nos documentos atuais antes de executar qualquer coisa em um servidor.
Verifique primeiro a memória
O Open WebUI é um programa a mais no mesmo servidor, e a documentação não informa nenhum valor de memória para ele. Segundo o início rápido, a imagem padrão, com a tag main, inclui modelos embutidos de conversão de fala em texto e de embeddings. Estime primeiro a memória do seu modelo e deixe folga para a interface e para o sistema operacional.
Experimente: Local LLM Memory Estimator
Estimativa
- Pesos do modelo
- 4.84 GiB
- KV cache
- 0.56 GiB
- Reserva
- 1.00 GiB
- Total
- 6.41 GiB (6.88 GB)
- Menor tamanho de memória comum que o comporta
- 8 GiB
Esta é uma estimativa. Ela não inclui os buffers de computação do runtime e supõe que todas as camadas têm o mesmo formato de KV. Meça uma execução real antes de escolher um plano.
Dados do modelo verificados em 2026-10-26.
Fontes: Ollama library · Configuração do modelo (config.json) · Ollama FAQ
Tudo é executado no seu navegador. Nada é enviado.
Inicie com o Docker
O início rápido serve o Open WebUI em http://localhost:3000 e o executa com um único comando docker run. Substitua your-secret-key por um valor que você mesmo gerar, por exemplo com o comando que o guia indica para isso.
| Passo | Comando |
|---|---|
| Gerar uma chave secreta | openssl rand -hex 32 |
| Iniciar o Open WebUI | docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data -e WEBUI_SECRET_KEY=your-secret-key --name open-webui --restart always ghcr.io/open-webui/open-webui:main |
| Acompanhar os logs | docker logs -f open-webui |
- -p 3000:8080 mapeia a porta 3000 do host para a porta 8080 do contêiner.
- O volume open-webui guarda seus chats, usuários e configurações. O guia diz que ele sobrevive às atualizações e que você nunca deve executar sem ele.
- WEBUI_SECRET_KEY: o guia diz para defini-la uma vez e mantê-la, porque, sem uma chave fixa, cada contêiner recriado desconecta todos, e uma chave nova também desconecta todos.
- As tags de imagem: main é a imagem padrão, cuda acrescenta suporte a GPU NVIDIA e exige --gpus all, e ollama embute o Ollama dentro do mesmo contêiner.
A primeira conta é a do administrador
A primeira tela oferece a criação de uma conta de administrador. Segundo o guia, essa primeira conta é a do administrador, que gerencia os usuários e todas as configurações da instância, e o cadastro se desativa sozinho assim que a conta de administrador existe.
Nossa recomendação, não uma afirmação dos documentos: crie a conta de administrador logo depois de o contêiner iniciar, antes de passar o endereço a qualquer pessoa, porque quem chegar primeiro à página pode criá-la.
Conecte ao Ollama: duas formas na documentação
As páginas do Open WebUI que consultamos descrevem a conexão de duas maneiras diferentes. Use a página que corresponde à versão que você executa e confirme qual tipo a sua versão oferece em Configurações, Admin, Conexões.
| Conexão | O que a página diz |
|---|---|
| Protocolo da API do Ollama | Em Configurações > Admin > Conexões, Gerenciar conexões da API do Ollama. A página indica a porta 11434 como a porta típica e diz para usar http://host.docker.internal:11434 quando o Open WebUI roda no Docker e o Ollama roda no host. |
| Conexão do tipo OpenAI | Adicione uma conexão do tipo OpenAI com a URL base http://localhost:11434/v1 e qualquer texto como chave de API. A página diz que o Ollama não verifica a chave, mas que o campo não pode ficar vazio, e que digitar ollama funciona. |
- Os modelos baixados são descobertos automaticamente e aparecem no seletor de modelos. Você pode limitá-los com uma lista separada por vírgulas.
- Você pode adicionar várias instâncias do Ollama. A página diz que as requisições são distribuídas por seleção aleatória, que os IDs de modelo precisam ser idênticos entre as instâncias e que um prefixo como remote/ distingue instâncias com os mesmos nomes de modelo.
- Para um endpoint lento ou inacessível, a página sugere definir AIOHTTP_CLIENT_TIMEOUT_MODEL_LIST=3 (o padrão é 10 segundos) para um failover mais rápido.
- Se a conexão falhar, a página aponta a configuração incorreta da rede como a causa mais comum e remete ao seu guia de solução de problemas.
As páginas que consultamos não dizem se um contêiner consegue alcançar um Ollama que escuta apenas em 127.0.0.1, e não tratam de ampliar o endereço do Ollama. Segundo o FAQ do Ollama, ele escuta em 127.0.0.1 por padrão. Nossa recomendação: não abra o Ollama para a rede inteira sem uma regra de firewall que o limite aos endereços que você usa.
Atualizar e remover
| Tarefa | Comandos do início rápido |
|---|---|
| Atualizar manualmente | docker rm -f open-webui, depois docker pull ghcr.io/open-webui/open-webui:main, depois o mesmo comando docker run de antes |
| Atualizar com o Watchtower | docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock nickfedor/watchtower --run-once open-webui |
| Desinstalar | docker rm -f open-webui, depois docker rmi ghcr.io/open-webui/open-webui:main, depois docker volume rm open-webui |
Remover o volume apaga seus chats, usuários e configurações. O guia diz que seus dados ficam no volume, então mantenha-o ao atualizar.
Mantenha-o privado
- O início rápido mostra uma variante com WEBUI_AUTH=False. Nossa recomendação, não uma afirmação dos documentos: não a use em um servidor que qualquer pessoa possa acessar.
- Coloque HTTPS e uma regra de firewall na frente da porta 3000 antes de compartilhar o endereço, e mantenha a chave secreta fora de qualquer coisa que você faça commit.
- O início rápido também mostra como apontar o Open WebUI para outro servidor com OLLAMA_BASE_URL. Se fizer isso, trate essa conexão também como parte da sua rede privada.
Fontes
Leia a seguir
- nginx na frente do Ollama: autenticação básica, HTTPS e configurações para streamingAcesse o Ollama de fora com segurança: nginx como proxy, autenticação básica, HTTPS, configurações de streaming e de timeout e uma regra de firewall, a partir da documentação oficial.
- Chamando um modelo local pelo seu código: saídas estruturadas e a API compatível com OpenAI no OllamaRestrinja a saída de um modelo local com um JSON Schema e chame o Ollama a partir de clientes no estilo OpenAI: o que a documentação oficial diz e o que não é compatível.
- O que um modelo local sabe fazer? Tools, thinking, vision e embeddings no Ollama, e o que cabe em uma VPSTools, thinking, vision, embeddings: o que significam os rótulos da biblioteca do Ollama, quais modelos os têm e qual o tamanho dos downloads.
- Instalar o Ollama em uma VPS e mantê-lo em execução: instalação, serviço systemd, configurações e atualizaçõesInstale o Ollama em uma VPS Linux e mantenha-o em execução: o comando de instalação, o serviço systemd, as variáveis de ambiente, o armazenamento dos modelos e as atualizações, conforme a documentação oficial.