Pesquisa de site

Analise e explore o conteúdo das imagens Docker


Inspecione o conteúdo da imagem Docker com Dive

Como você já deve saber, uma imagem de contêiner do Docker é um pacote de software leve, independente e executável que contém tudo o que é necessário para executar um aplicativo. É por isso que as imagens de contêiner são frequentemente usadas por desenvolvedores para criar e distribuir aplicativos. Se você está curioso para saber o que há em uma imagem do Docker, este breve guia pode ajudá-lo. Hoje vamos aprender a analisar e explorar o conteúdo das imagens Docker camada por camada usando uma ferramenta chamada "Dive".

Ao analisar uma imagem do Docker, podemos descobrir possíveis arquivos duplicados nas camadas e removê-los para reduzir o tamanho da imagem do Docker.

O utilitário Dive não é apenas um analisador de imagens Docker, mas também nos ajuda a construir um. Dive é uma ferramenta gratuita e de código aberto escrita na linguagem de programação Go.

Instale o mergulho no Linux

Obtenha a versão mais recente na página de lançamentos e instale-a conforme mostrado abaixo, dependendo da distribuição que você usa.

Se você estiver no Debian ou Ubuntu, execute os seguintes comandos para fazer o download e instalá-lo.

wget https://github.com/wagoodman/dive/releases/download/v0.0.8/dive_0.0.8_linux_amd64.deb
sudo apt install ./dive_0.0.8_linux_amd64.deb

No RHEL/CentOS:

wget https://github.com/wagoodman/dive/releases/download/v0.0.8/dive_0.0.8_linux_amd64.rpm
sudo rpm -i dive_0.0.8_linux_amd64.rpm

Ele está disponível em AUR, então você pode instalar usando qualquer ferramenta auxiliar do AUR, por exemplo Yay, no Arch Linux e suas variantes.

yay -S dive

O Dive também pode ser instalado usando o gerenciador de pacotes Linuxbrew.

brew tap wagoodman/dive
brew install dive

Para outros métodos de instalação, consulte a página do GitHub do projeto fornecida no final deste guia.

Analise e explore o conteúdo das imagens Docker

Para analisar uma imagem Docker, basta executar o comando dive com Docker "Image ID". Você pode obter os IDs das suas imagens Docker usando o comando "sudo docker images".

sudo dive ea4c82dcd15a

Aqui, ea4c82dcd15a é o ID da imagem do Docker.

O comando Dive analisará rapidamente a imagem Docker fornecida e exibirá seu conteúdo no Terminal.

Explore o conteúdo das imagens Docker usando Dive

Como você pode ver na imagem acima, as camadas de determinada imagem do docker e seus detalhes, espaço desperdiçado são mostrados no painel esquerdo. No painel direito, o conteúdo de cada camada na imagem Docker fornecida. Você pode alternar entre os painéis esquerdo e direito usando a tecla Ctrl+BARRA DE ESPAÇO e as setas PARA CIMA/PARA BAIXO para navegar pela árvore de diretórios.

A lista de atalhos de teclado para usar "Dive".

  • Ctrl+Barra de espaço - Alterna entre os painéis esquerdo e direito,
  • Barra de espaço - Expandir/recolher a árvore de diretórios,
  • Ctrl+A - Mostrar/ocultar arquivos adicionados,
  • Ctrl+R - Mostrar/ocultar arquivos removidos,
  • Ctrl+M - Mostrar/ocultar arquivos modificados,
  • Ctrl+U - Mostrar/ocultar arquivos não modificados,
  • Ctrl+ L - Mostrar alterações de camada,
  • Ctrl+A - Mostrar alterações de camada,
  • Ctrl+/ - Filtrar arquivos,
  • Ctrl+C - Sair.

No exemplo acima, usei a permissão "sudo", porque minhas imagens Docker estão armazenadas no diretório /var/lib/docker/. Se você os tiver em seu diretório $HOME ou em qualquer lugar que não pertença ao usuário "root", você não precisa usar "sudo".

Você também pode construir uma imagem Docker e fazer uma análise imediata com um comando:

dive build -t <some-tag>

Para obter mais detalhes, consulte a página GitHub do projeto fornecida abaixo.

Recurso:

  • Mergulhe na página do GitHub

Artigos relacionados