Muitos usuários de
Linux estão rodando seus próprios modelos de Inteligência Artificial localmente usando o Ollama.
Mostrei como fazer isso em:
No entanto, há quem não queira usar a IA só no terminal. O
Open WebUI é uma interface muito parecida com o ChatGPT que roda no seu navegador e se conecta ao seu
Ollama.
A instalação oficial recomenda o uso do Docker, mas no Gentoo com systemd, passei por alguns "tropeços". Este artigo tenta te levar do zero até a interface rodando perfeitamente, resolvendo os problemas no caminho.
Passo 1: A instalação do Docker
No Gentoo, o serviço do Docker (o daemon) e os comandos do terminal (o cliente) são pacotes separados. Se você compilar apenas o
docker, ao tentar rodar um comando, receberá o temido erro:
comando não encontrado.
Para evitar isso, instale os dois pacotes:
sudo emerge app-containers/docker
sudo emerge app-containers/docker-cli
Após a compilação, inicie o serviço no systemd e habilite-o para iniciar junto com o boot do sistema:
sudo systemctl enable --now docker
Passo 2: Evitando o uso do SUDO toda hora
Para que você não precise digitar
sudo antes de todo comando do Docker (e para evitar dores de cabeça com permissões), adicione o seu usuário comum ao grupo
docker.
Substitua "seu_usuario" pelo seu nome de login:sudo usermod -aG docker seu_usuario
Para aplicar a mudança imediatamente sem precisar deslogar, rode:
newgrp docker
Passo 3: Conexão do Ollama
Esse foi o meu erro mais frustrante. Instalei tudo, abri o Open WebUI, tentei selecionar um modelo, e a lista aparece
vazia ("Nenhum resultado encontrado").
Graças à minha amiga Gemini, descobri que isso acontece porque o Open WebUI roda dentro de um contêiner Docker (que tem sua própria rede interna), mas o serviço do Ollama no Linux, por padrão, só escuta conexões vindas do
localhost (127.0.0.1) da máquina hospedeira. O Ollama bloqueia o Docker.
Para resolver, precisamos dizer ao Ollama para escutar em todos os IPs locais. Com o systemd, o jeito de fazer isso é criando um
override:
1. Abra o editor do serviço do Ollama:
sudo systemctl edit ollama
2. Adicione as seguintes linhas (isso criará um arquivo de configuração extra sem alterar o padrão do pacote):
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
3. Salve o arquivo e reinicie o serviço:
sudo systemctl restart ollama
Passo 4: Resolvendo a lentidão extrema (Hugging Face)
Ao rodar o Open WebUI pela primeira vez, ele baixa alguns modelos menores do repositório
Hugging Face (necessários para leitura de PDFs e embeddings). Se você rodar o comando padrão do Docker como usuário anônimo, a Hugging Face limita drasticamente a velocidade do seu download (às vezes levando horas). Aqui travou em 30% e eu desisti.
Para baixar na velocidade máxima da sua internet:
1. Acesse
https://huggingface.co e crie uma conta gratuita.
2. Vá nas suas configurações de perfil >
Access Tokens.
3. Crie um novo token com permissão apenas de leitura (
Read) e copie-o.
Passo 5: Subindo o Open WebUI de vez
Agora sim, com tudo preparado, vamos baixar e iniciar o contêiner do Open WebUI. Lembre-se de colar o token que você copiou no passo anterior no local indicado:
docker run -d -p 3000:8080 -e HF_TOKEN="COLE_SEU_TOKEN_AQUI" --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
Explicando o comando:
-p 3000:8080: Vai expor a interface na porta 3000 do seu PC.
--add-host=host...: Permite que o contêiner acesse o Ollama da sua máquina real de forma fácil.
-v open-webui...: Cria um volume persistente. Assim, você não perde seu histórico de chat se reiniciar o PC.
--restart always: Faz com que o Open WebUI inicie automaticamente toda vez que você ligar o Gentoo.
Passo 6: Acessando e administrando
Aguarde alguns instantes para o contêiner iniciar e digite no seu navegador:
http://localhost:3000
- A primeira conta que você criar na tela de login será automaticamente a conta de Administrador.
- Clique no seu nome no canto inferior esquerdo para acessar o Painel de Administração, onde você pode baixar novos modelos digitando o nome deles diretamente pela interface gráfica, sem precisar abrir o terminal.
Espero que essa dica poupe o tempo de quem está montando seu servidor de IA caseiro no Gentoo!
Links: