As imagens do Docker podem ocupar muito espaço de ar­ma­ze­na­mento no seu sistema anfitrião ou no seu registo de con­ten­to­res. Ao eliminar imagens do Docker inativas ou obsoletas, liberta espaço para novas imagens e dados, o que é muito útil em ambientes onde o espaço de ar­ma­ze­na­mento é limitado.

Quando é que se deve eliminar imagens do Docker?

As imagens Docker são criadas a partir dos chamados ficheiros Docker, que definem os passos para con­fi­gu­rar a in­fra­es­tru­tura de con­ten­to­res. Estas imagens podem ser uti­li­za­das para iniciar os con­ten­to­res Docker, que executam a aplicação ou o serviço num ambiente isolado e con­sis­tente.

No entanto, ter muitas imagens pode afetar o de­sem­pe­nho da sua in­fra­es­tru­tura Docker e ocupar demasiado espaço de ar­ma­ze­na­mento. Quando o Docker procura uma imagem, tem de percorrer todas as imagens dis­po­ní­veis para encontrar a imagem correta. Por isso, ao eliminar imagens Docker des­ne­ces­sá­rias, estará a aumentar a efi­ci­ên­cia e a reduzir os tempos de pesquisa, além de proteger o seu sistema contra possíveis riscos.

Por último, mas não menos im­por­tante, quando os ciclos de de­sen­vol­vi­mento e testes tiverem terminado e já não pre­ci­sa­res mais da imagem, deves eliminá-la para libertar espaço.

Apagar uma ou mais imagens do Docker

Para eliminar uma ou várias imagens Docker de uma só vez, pode executar o comando docker rmi com uma lista dos nomes ou IDs das imagens.

Passo 1. Listar os IDs e as etiquetas das imagens

Para obter uma lista de todas as imagens do Docker no sistema, utilize o seguinte comando:

docker images -a
bash

O resultado contém in­for­ma­ções como os nomes das imagens, os IDs das imagens, a data de criação, o tamanho e o autor da imagem.

Passo 2. Apagar imagens

Se quiseres eliminar imagens em si­mul­tâ­neo, podes escrever os IDs ou nomes das imagens separados por um espaço.

docker rmi Image imagen
bash

Tenha em atenção que só é possível eliminar imagens do Docker se não houver nenhum contentor ativo que dependa delas. Por isso, antes de eliminar uma imagem, deve primeiro parar o contentor cor­res­pon­dente e eliminá-lo.

Eliminar imagens Docker sem re­fe­rên­cia

A eli­mi­na­ção de imagens sem re­fe­rên­cia consiste em remover imagens do Docker que já não estão a ser uti­li­za­das por con­ten­to­res ativos ou por outras imagens. Estas imagens sem re­fe­rên­cia ou não uti­li­za­das podem acumular-se ao longo do tempo e ocupar espaço no host do Docker. Eliminar essas imagens pe­ri­o­di­ca­mente ajuda a melhorar a gestão de recursos no ambiente do Docker.

Passo 1. Listar imagens sem re­fe­rên­cia

Em primeiro lugar, podes obter uma lista das imagens sem re­fe­rên­cia para verificar quais devem ser eli­mi­na­das.

docker images -f dangling=true
bash

Passo 2. Eliminar imagens sem re­fe­rên­cia

Com o comando seguinte, pode eliminar todas as imagens sem re­fe­rên­cia e libertar espaço de ar­ma­ze­na­mento.

docker images purge
bash

Eliminar imagens do Docker de acordo com um padrão

A eli­mi­na­ção de imagens do Docker com base num padrão ou prefixo es­pe­cí­fico permite apagar um grupo de imagens de uma só vez, caso estas tenham um padrão de nome em comum. Esta ação pode ser útil se tiver muitas imagens e pretender eliminar apenas aquelas que pertencem a uma categoria es­pe­cí­fica.

Passo 1. Listar imagens do Docker com o grep

Podes combinar o comando docker images com grep para mostrar as imagens que cor­res­pon­dem ao padrão escolhido.

docker images -a | grep "pattern"
bash

Passo 2. Apagar imagens do Docker

Depois de escolher um padrão, pode filtrar todas as imagens que cor­res­pon­dam a ele uti­li­zando awk para extrair os IDs das imagens. Em seguida, pode apagá-las com o comando xargs docker rmi.

docker images -a | grep "pattern" | awk '{print $3}' | xargs docker rmi
bash

Eliminar todas as imagens do Docker

O processo de eli­mi­na­ção de todas as imagens do sistema deve ser realizado com muito cuidado, uma vez que não será possível reverter esta ação e os con­ten­to­res as­so­ci­a­dos a essas imagens não poderão ser rei­ni­ci­a­dos.

Passo 1. Enumerar todas as imagens

Em primeiro lugar, deve conseguir ver todas as imagens ativas e inativas do seu sistema. Pode fazê-lo da seguinte forma:

docker images -a
bash

Passo 2. Apagar todas as imagens do Docker

Em seguida, deve adicionar o resultado ao comando docker rmi para que as imagens sejam eli­mi­na­das.

docker rmi $(Docker-Images -a -q)
bash

No nosso guia, pode encontrar mais ins­tru­ções sobre como eliminar volumes do Docker ou eliminar con­ten­to­res do Docker. Além disso, ex­pli­ca­mos o que é o Docker e em que diferem os con­ten­to­res do Docker dos volumes do Docker.

Ir para o menu principal