A maneira mais rápida de depurar containers Docker (Dozzle)

BBetter Stack
Computing/SoftwareInternet Technology

Transcript

00:00:00Você poderia continuar depurando o Docker com cinco terminais e rolagem infinita.
00:00:04Ou poderia abrir uma janela do navegador e ver todos os logs dos containers ao vivo.
00:00:08Este é o Dozzle.
00:00:10Um visualizador de logs em tempo real, de código aberto, que transmite os logs
00:00:13direto para o seu navegador e não os armazena.
00:00:15É por isso que ele é tão leve, com cerca de sete megabytes, e rápido.
00:00:19Vamos ver como configurar isso e colocá-lo em uso agora mesmo.
00:00:22[MÚSICA]
00:00:28Talvez você tenha três terminais abertos, quem sabe cinco.
00:00:30Rodando “docker logs” em cada um deles.
00:00:32Rolando a tela, pesquisando, alternando abas.
00:00:35Esse é o preço de trabalhar com containers.
00:00:37O Dozzle nos dá uma forma mais simples de ver tudo ao vivo em um só lugar
00:00:41sem precisar montar toda uma estrutura complexa de logs.
00:00:43Ele suporta Docker, Docker Swarm, Kubernetes e
00:00:46configurações multi-host usando agentes; além disso, a versão 10 acabou de sair.
00:00:50Ela traz alertas, webhooks, suporte a nuvem e atualizações de segurança importantes.
00:00:54Foi feito para uma única coisa: visibilidade ao vivo enquanto você depura.
00:00:57Hora de mostrar como configurar e
00:00:59por que ele pode mudar totalmente como você depura apps Docker.
00:01:02Se economizar tempo no seu fluxo de desenvolvimento importa para você, inscreva-se.
00:01:06Estamos sempre cobrindo ferramentas práticas que fazem a diferença.
00:01:09À primeira vista, o Dozzle parece apenas mais uma ferramenta de logs.
00:01:12Esperamos algo pesado, algo que armazene dados,
00:01:15algo que precise de um banco de dados, mas aqui é o oposto.
00:01:19Vamos configurá-lo em menos de 60 segundos.
00:01:22Primeiro, baixe a imagem com o comando que estou executando aqui.
00:01:26Vou rodá-lo, montar o socket do Docker e expor a porta. Só isso.
00:01:30Não tem banco de dados, não tem indexação e não preciso ficar esperando.
00:01:33Eu mudei as minhas portas porque já estou rodando outros containers,
00:01:37e um deles já usa a porta padrão.
00:01:39Agora posso abrir meu navegador no localhost e
00:01:42vemos imediatamente nossos containers rodando.
00:01:44Aquela demora esperada na configuração simplesmente não acontece.
00:01:47Isso funciona muito bem.
00:01:49Se usar Docker Compose, defina um serviço com a imagem, mapeie a porta,
00:01:53monte o socket do Docker e passe a flag “no analytics”.
00:01:56Depois execute “docker-compose up” e pronto.
00:01:59As únicas coisas a observar são as permissões do socket e
00:02:02garantir que está na versão 10 ou superior para as atualizações recentes.
00:02:07Esse é todo o ciclo de configuração.
00:02:08Não é nada absurdo, mas a interface e a praticidade são incríveis.
00:02:13Agora é aqui que tudo deve fazer sentido.
00:02:16Ao abrir o Dozzle, você vê uma lista limpa de todos os seus containers ativos.
00:02:20Não há painéis complexos, apenas os nossos serviços.
00:02:24Posso começar a digitar na barra de busca, como “DB”.
00:02:27E instantaneamente seu container de banco de dados aparece, sem precisar do nome exato.
00:02:32Clique em um container e os logs começam a ser transmitidos ao vivo.
00:02:35Não precisamos atualizar nada, ele faz tudo por nós.
00:02:38Eu criei um container fictício para simular falhas em requisições, mas
00:02:41se você já tem seu app, tente apenas disparar um erro.
00:02:46Assim que o erro acontece, ele aparece no navegador.
00:02:48Não preciso trocar de terminal nem reexecutar comandos.
00:02:51No momento em que algo quebra, eu vejo direto na interface.
00:02:54Na versão 10, há o modo SQL alimentado pelo DuckDB.
00:02:58Você pode mudar o modo no terminal e rodar uma consulta para selecionar entradas.
00:03:03Isso aqui é bem básico, mas eu poderia fazer uma query e
00:03:05o resultado será retornado aqui no Dozzle, entende?
00:03:07Isso nos dá uma ideia do potencial.
00:03:09Então, em vez de procurar no olho, agora podemos consultar os logs.
00:03:13Você também pode definir uma condição, como o uso de CPU passar de 80%,
00:03:17e conectar um webhook ao Slack ou outro endpoint,
00:03:20o que torna tudo muito mais interativo.
00:03:22Essa foi uma das funcionalidades da atualização mais recente.
00:03:24Antes de expor isso fora da sua máquina local,
00:03:27certifique-se de ativar a autenticação.
00:03:29Configure a variável de ambiente e
00:03:31forneça um arquivo de configuração de usuários para proteger o acesso.
00:03:35No Kubernetes, faça o deploy usando Manifests ou Helm.
00:03:38Monte os logs necessários e exponha através de um serviço.
00:03:42Apenas dois pensamentos finais antes de prosseguir.
00:03:44Quero ser claro sobre o que isso é e o que não é.
00:03:48O Dozzle é simples, leve e focado em transmissão ao vivo.
00:03:52Ele não armazena logs, o que o mantém rápido e respeita a privacidade.
00:03:57Mas isso também significa que não foi feito para retenção de longo prazo.
00:04:00Então, use essa informação como preferir.
00:04:02Se você precisa de armazenamento persistente e dashboards,
00:04:04existem inúmeras opções melhores por aí que já utilizamos.
00:04:07Mas para analisar containers via streaming ao vivo e de código aberto,
00:04:11eu achei essa ferramenta muito legal.
00:04:13Cada minuto que você gasta alternando terminais
00:04:15e analisando logs é um tempo que você não está corrigindo o problema.
00:04:18O Dozzle espera remover isso, ou pelo menos parece conseguir.
00:04:22Ele centraliza seus logs, adiciona filtros, queries SQL e visualizações divididas,
00:04:27além de alertas na versão 10, tudo sem se tornar pesado ou complexo.
00:04:31Configure-o no seu próximo projeto Docker e veja quão rápido você nota os problemas.
00:04:35Se achou isso útil, inscreva-se para mais conteúdo focado em desenvolvimento.
00:04:39Nos vemos no próximo vídeo.

Key Takeaway

O Dozzle é uma solução eficiente e minimalista para centralizar a visualização de logs do Docker em tempo real, priorizando a velocidade de depuração sem a complexidade de sistemas de armazenamento pesados.

Highlights

Dozzle é um visualizador de logs em tempo real

Timeline

Introdução ao Dozzle e Proposta de Valor

O vídeo começa contrastando a depuração tradicional baseada em múltiplos terminais com a interface simplificada do Dozzle. O narrador define a ferramenta como um visualizador de logs de código aberto que transmite dados diretamente para o navegador sem armazenamento persistente. Com apenas 7MB, a aplicação é apresentada como uma solução leve e rápida para desenvolvedores que buscam agilidade. São mencionadas as novidades da versão 10, como suporte a alertas e atualizações de segurança. O objetivo principal é proporcionar visibilidade imediata durante o processo de correção de bugs em containers.

Configuração Rápida e Implementação

Nesta seção, é demonstrado como configurar o Dozzle em menos de um minuto utilizando comandos básicos do Docker. O processo envolve baixar a imagem, montar o socket do Docker e expor a porta necessária para o navegador. O palestrante destaca que não há necessidade de indexação ou espera, tornando o acesso ao painel instantâneo via localhost. Também é explicado como utilizar o Docker Compose, incluindo a recomendação da flag "no analytics" e cuidados com permissões. Esta parte reforça a praticidade da ferramenta ao evitar configurações complexas de infraestrutura de logs.

Exploração da Interface e Recursos de Depuração

O apresentador detalha a interface do usuário, que foca na limpeza visual e na facilidade de busca por serviços específicos. Ao digitar termos simples como "DB", o usuário localiza containers instantaneamente sem precisar lembrar nomes exatos. A transmissão ao vivo elimina a necessidade de atualizar a página manualmente, permitindo ver erros no exato momento em que ocorrem. É mostrado um exemplo prático de simulação de falhas onde o erro aparece no navegador sem troca de abas. Isso demonstra como a ferramenta centraliza o fluxo de trabalho e reduz a fadiga de alternar entre terminais.

Funcionalidades Avançadas: SQL, Alertas e Segurança

A análise se aprofunda nos novos recursos da versão 10, destacando o modo SQL alimentado pelo DuckDB para consultas granulares nos logs. O usuário pode agora filtrar entradas de forma programática em vez de apenas visualmente, aumentando o potencial de análise. Outro ponto forte é a integração de webhooks com Slack para alertas de consumo de CPU ou eventos específicos de sistema. O narrador também faz um alerta crucial sobre segurança, recomendando a ativação de autenticação antes de expor a ferramenta externamente. Por fim, menciona-se brevemente a flexibilidade de deploy no Kubernetes usando Manifests ou Helm.

Vantagens, Limitações e Conclusão

O vídeo encerra com uma reflexão honesta sobre o propósito do Dozzle, deixando claro que ele não substitui sistemas de retenção de logs de longo prazo. Por não armazenar dados, ele respeita a privacidade e mantém a performance, mas não é indicado para auditorias históricas. O palestrante sugere que para dashboards persistentes existem outras ferramentas, mas para streaming ao vivo, o Dozzle é imbatível. A conclusão enfatiza a economia de tempo e o foco na resolução de problemas em vez da navegação em logs. O espectador é encorajado a testar a ferramenta no próximo projeto Docker para otimizar seu ciclo de desenvolvimento.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video