Guia completo para instalar o Pi-hole com Docker

Última atualização: 30 agosto, 2026

Cansado de ser bombardeado por anúncios sempre que navega na internet ou usa um aplicativo no celular? Bem, existe uma solução fantástica chamada Pi-hole, que funciona basicamente como um filtro DNS inteligente . A melhor parte é que você não precisa instalar nada em todos os dispositivos da sua casa; o sistema opera no núcleo da sua rede, interceptando e bloqueando conteúdo indesejado antes mesmo que ele chegue à sua tela.

Para configurar esse sistema, a opção mais inteligente atualmente é usar o Docker. Ao colocar o Pi-hole em um contêiner, você evita sobrecarregar o sistema operacional do seu computador, facilita muito as atualizações e aproveita ao máximo seu hardware — seja um Raspberry Pi, um servidor antigo ou até mesmo uma máquina virtual executando Ubuntu ou Debian — sem conflitos de serviço.

Bloqueie anúncios com o Pi-hole
Artigo relacionado:
Guia completo para bloquear anúncios com o Pi-hole

Pré-requisitos e preparação do local

Antes de começarmos, vale ressaltar que o Pi-hole é extremamente leve. Para executá-lo sem problemas, você precisa de apenas cerca de 512 MB de RAM e entre 2 e 4 GB de espaço em disco. Quanto ao sistema operacional, ele funciona perfeitamente com distribuições que usam systemd ou sysvinit, como Debian, Ubuntu, Fedora ou Raspberry Pi OS.

Um ponto crucial é a rede. Para que o sistema seja estável, o Pi-hole requer um endereço IP estático . Se você não quiser se preocupar com a configuração manual do servidor, pode reservar um endereço IP no seu roteador para que ele sempre atribua o mesmo endereço ao computador que hospeda o contêiner.

  O que é Webminal: O terminal Linux online para aprendizagem

Implantação do Pi-hole usando Docker

A maneira mais fácil de configurar isso é através de um arquivo docker-compose.yml . Esse método permite definir toda a configuração de uma só vez. É crucial mapear os volumes (como /etc/pihole e /etc-dnsmasq.d) para pastas locais no seu host para que, se você atualizar a imagem do contêiner, não perca todas as suas configurações ou listas negras.

Microcomputador Raspberry Pi em uma caixa transparente, representando o hardware para um servidor Pi-hole.
Artigo relacionado:
Um guia completo para Pi-hole e Unbound para privacidade online

No arquivo de configuração, preste atenção às portas. A porta 53 é essencial para o DNS e deve estar livre. Se o contêiner não estiver iniciando, é provável que o systemd-resolved ou o dnsmasq estejam usando essa porta no host. Nesses casos, você precisará desativar o serviço conflitante ou configurar uma ponte para redirecionar o tráfego.

Se você decidir usar o Pi-hole também como servidor DHCP, lembre-se de adicionar a capacidade NET_ADMIN na seção cap_add do arquivo compose e, de preferência, usar o modo de rede host (network_mode: host) para evitar problemas de conectividade.

Configuração inicial e gerenciamento de acesso

Assim que você executar o comando docker-compose up -dO sistema estará online. Para acessar o painel de controle, conecte-se ao endereço IP do seu servidor através da porta que você atribuiu (80 por padrão, embora você possa alterá-la para 8080 ou 89 para evitar conflitos com outros servidores web). Se você não definiu uma senha na variável de ambiente... SENHA DA WEBO sistema irá gerar um número aleatório que você poderá encontrar verificando os registros com o comando. docker logs pihole | grep random.

Para maior segurança, é melhor alterar essa senha rapidamente. Você pode acessar o terminal de contêineres usando docker exec -it pihole /bin/bash e execute o comando pihole -a -p Defina uma senha que seja fácil de lembrar para você, mas difícil para os outros.

  5 Ferramentas para aprender a programar em Python

Filtragem a montante e otimização de DNS

Para garantir que o Pi-hole saiba a quem consultar quando não reconhecer um endereço, você precisa configurar um servidor DNS upstream. Uma opção bastante robusta é o Quad9 ; basta selecionar seus servidores filtrados (como 9.9.9.9) na aba de configurações de DNS. Isso adiciona uma camada extra de segurança e privacidade à sua navegação.

O núcleo do Pi-hole são suas listas de bloqueio. Se você quiser começar com algo sólido, pode adicionar a lista de StevenBlack . Sempre que modificar as listas, seja excluindo entradas com o SQLite3 ou adicionando novas URLs, é essencial ir em Ferramentas e executar Atualizar Gravity para que o banco de dados seja atualizado e as alterações entrem em vigor.

Dicas avançadas: Domínios locais e gerenciamento

Se você tiver vários serviços em casa, poderá criar nomes de domínio locais Para evitar ter que memorizar endereços IP, crie um arquivo chamado local.list No volume Pi-hole montado, defina o endereço IP e o formato do domínio. Em seguida, crie um arquivo de configuração para o dnsmasq que faça referência a essa lista e reinicie o contêiner.

Para gerenciar o sistema sem acessar o site, existem comandos muito úteis que você pode executar a partir do servidor. Por exemplo, para adicionar um domínio à lista negra, use `pihole -b mydomain.com` , ou para desativar temporariamente a filtragem por 10 minutos, você pode usar `pihole disable 10m` , o que é muito útil quando um site legítimo é bloqueado por engano.

Controlar a publicidade doméstica é totalmente viável combinando hardware modesto com a flexibilidade do Docker, garantindo que a porta 53 esteja livre e configurando corretamente os volumes para armazenar os dados. Depois de ajustar o DNS no seu roteador e otimizar as listas do Gravity, você desfrutará de uma rede mais limpa e muito mais rápida em todos os seus dispositivos.

Imagem em close-up de uma placa Raspberry Pi com seus componentes eletrônicos, microchips e portas visíveis em uma superfície, ideal para ilustrar o hardware principal do tutorial.
Artigo relacionado:
Guia completo para instalar e otimizar o AdGuard Home no Raspberry Pi