5.1 Comando docker images
Se você já tem imagens Docker armazenadas no seu sistema, existem comandos específicos para gerenciá-las. Em primeiro lugar, estamos falando de docker images
e docker rmi
. Nesta aula, vamos analisar detalhadamente como usar esses comandos para gerenciar imagens Docker de forma eficaz.
O comando docker images
exibe uma lista de imagens armazenadas localmente no seu sistema. Ele mostra informações como o nome do repositório, tag, ID da imagem, data de criação e tamanho. Essas informações ajudam você a avaliar rapidamente quais imagens estão disponíveis e quanto espaço elas ocupam.
Sintaxe:
docker images [OPTIONS] [REPOSITORY[:TAG]]
Onde:
-
OPTIONS
: parâmetros adicionais para filtrar e formatar a saída. -
[REPOSITORY[:TAG]]
: (opcional) filtro pelo nome do repositório e/ou tag.
Exemplo de uso básico
Este exemplo exibe a lista de todas as imagens armazenadas localmente.
docker images
Exemplo de saída do comando docker images
:
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 5a7e5b1a3b8c 2 days ago 133MB
ubuntu 20.04 ba6acccedd29 3 weeks ago 72.9MB
myapp 1.0 d1e5e2ff5ff2 1 month ago 89.5MB
Descrição das colunas:
- REPOSITORY: nome do repositório ao qual a imagem pertence.
- TAG: tag que indica a versão da imagem.
- IMAGE ID: identificador único da imagem.
- CREATED: tempo desde que a imagem foi criada.
- SIZE: tamanho da imagem na memória.
5.2 Filtragem de Imagens
A filtragem de imagens permite restringir os resultados do comando docker images
, pra visualizar só as imagens que atendem aos seus critérios. Isso é útil se você tiver muitas imagens armazenadas no sistema e precisar encontrar rapidamente uma imagem específica pelo nome do repositório, tag ou outros parâmetros.
1. Filtro por repositório
docker images nginx
Esse exemplo vai exibir apenas as imagens do repositório nginx
.
2. Filtro por tag
docker images ubuntu:20.04
Esse exemplo vai exibir a imagem ubuntu
com a tag 20.04
.
3. Usando o parâmetro -a (all)
Por padrão, o comando docker images
mostra só as últimas versões das imagens. Pra exibir todas as imagens, incluindo as camadas intermediárias, use a opção -a
.
docker images -a
4. Formatando a saída
Pra facilitar a leitura ou integração com outras ferramentas, você pode personalizar o formato da saída usando a opção --format
. Isso é especialmente útil em scripts e na automação de tarefas.
docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}"
5.3 Comando docker rmi
O comando docker rmi
é usado pra remover uma ou mais imagens Docker. Ele é útil pra liberar espaço no disco e manter o sistema organizado, especialmente se as imagens não estão mais sendo usadas.
Sintaxe:
docker rmi [OPTIONS] IMAGE [IMAGE...]
Onde:
- OPTIONS: parâmetros adicionais pra gerenciar o processo de remoção.
- IMAGE: nome, tag ou ID da imagem que deve ser removida.
Exemplo de uso básico
Este exemplo remove a imagem com o nome nginx
.
docker rmi nginx
Remoção pelo ID da imagem
Este exemplo remove a imagem com o ID 5a7e5b1a3b8c
.
docker rmi 5a7e5b1a3b8c
Remoção forçada
Se a imagem está sendo usada por um container ou bloqueada, sua remoção padrão pode não ser possível. Pra forçar a remoção, use a opção -f (force)
.
docker rmi -f myapp:1.0
Remoção de várias imagens
Pra remover várias imagens de uma vez, liste elas separadas por espaços.
docker rmi nginx ubuntu:20.04 myapp:1.0
5.4 Exemplos práticos
Exemplo 1: Visualizar todas as imagens
Para obter a lista completa de todas as imagens armazenadas na máquina local, execute o comando:
docker images
Esse comando vai mostrar uma tabela com os nomes dos repositórios, tags, IDs das imagens, datas de criação e tamanhos.
Exemplo 2: Visualizar imagens com formatação personalizada
Para obter a lista de imagens com uma formatação personalizada, por exemplo, exibindo apenas o nome do repositório e a tag:
docker images --format "{{.Repository}}:{{.Tag}}"
Esse exemplo mostra como usar a opção --format
para ajustar a saída, algo útil ao escrever scripts.
Exemplo 3: Deletar todas as imagens não utilizadas
Se você quiser remover todas as imagens não utilizadas pelos containers, primeiro obtenha a lista e depois execute o comando de remoção:
docker images -q
docker rmi $(docker images -q)
O comando docker images -q
exibe apenas os IDs de todas as imagens armazenadas localmente, que são então passados para o docker rmi
para exclusão.
Exemplo 4: Deletar dangling images
Dangling images
são imagens sem tags que permanecem após atualizações de imagens ou builds mal-sucedidos. Para removê-las, use o comando:
docker rmi $(docker images -f "dangling=true" -q)
Aqui, -f "dangling=true"
filtra as imagens sem tags, e -q
exibe apenas seus IDs, que são passados para o comando de remoção.
GO TO FULL VERSION