Eliminare le immagini Docker: scenari frequenti e metodi comuni
Le immagini Docker possono occupare considerevole spazio di archiviazione sul tuo host o all’interno del registro dei container. Quando elimini un’immagine Docker inutilizzata oppure obsoleta, fai spazio a nuove immagini e dati. Questo risulta particolarmente utile negli ambienti in cui lo spazio di archiviazione disponibile è limitato.
Quando dovresti eliminare un’immagine Docker?
Le immagini Docker vengono create dai cosiddetti file di Docker, che servono a definire i passaggi per la configurazione dell’infrastruttura dei container. Queste immagini possono poi essere utilizzate per avviare container Docker, che eseguono l’applicazione o un servizio in un ambiente isolato e consistente.
Un numero elevato di immagini può però influire sulle prestazioni dell’infrastruttura Docker e occupare uno spazio di archiviazione eccessivo. Quando Docker cerca un’immagine, deve passare in rassegna tutte le immagini a sua disposizione per trovare quella giusta. Per questo motivo, eliminando le immagini Docker non più necessarie, aumenti l’efficienza, riduci i tempi necessari per la ricerca e proteggi il tuo sistema da eventuali rischi di sicurezza.
Infine, ma non meno importante, quando i cicli di sviluppo e di test sono terminati e hai utilizzato le immagini per i rispettivi scopi temporanei, dovresti rimuoverle per liberare spazio di archiviazione.
Cancellare una o più immagini Docker
Se desideri eliminare una o più immagini Docker contemporaneamente, puoi inoltrare un elenco di ID o nomi di immagini al comando docker rmi
.
Primo passaggio: ottenere un elenco degli ID e dei tag delle immagini
Utilizza il seguente comando per visualizzare un elenco di tutte le immagini Docker presenti sul tuo sistema:
docker images -a
bashIl risultato contiene informazioni come il nome, l’ID, la data di creazione, la dimensione e il creatore dell’immagine.
Secondo passaggio: cancellare le immagini
Se desideri rimuovere più immagini contemporaneamente, puoi scrivere gli ID o i nomi delle immagini uno dopo l’altro, separati da uno spazio.
docker rmi Image Image
bashDevi sapere che puoi eliminare un’immagine Docker soltanto se nessun container attivo dipende da essa. Questo significa che devi prima arrestare e rimuovere i container per poter procedere con l’eliminazione delle immagini associate.
Rimuovere le immagini Docker non utilizzate
La rimozione di immagini non utilizzate fa riferimento all’eliminazione di immagini Docker che non sono più associate a container attivi o ad altre immagini. Le immagini non utilizzate possono accumularsi nel tempo e occupare spazio sull’host in cui usi Docker. È buona prassi rimuovere tali immagini a intervalli regolari per migliorare la gestione delle risorse dell’ambiente Docker.
Primo passaggio: elencare le immagini non utilizzate
Per prima cosa devi ottenere l’elenco delle immagini non utilizzate per verificare quali rimuovere.
docker images -f dangling=true
bashSecondo passaggio: rimuovere le immagini non associate
Il comando seguente elimina tutte le immagini non associate, liberando lo spazio di archiviazione corrispondente.
docker images purge
bashRimuovere le immagini Docker secondo uno schema specifico
L’eliminazione di immagini Docker in base a uno specifico schema o prefisso ti consente di rimuovere un gruppo di immagini con una sola operazione, se corrispondono a uno schema comune di nomi. Questo metodo è utile se hai un gran numero di immagini e desideri eliminarne solo una specifica categoria.
Primo passaggio: elencare le immagini Docker con grep
Puoi combinare il comando docker images
con grep
per riprodurre solo le immagini che corrispondono ai criteri da te definiti.
docker images -a | grep "pattern"
bashSecondo passaggio: cancellare le immagini Docker corrispondenti
Una volta stabilito lo schema, puoi filtrare tutte le immagini corrispondenti con awk
, così da estrarre gli ID corrispondenti, e poi eliminarle con il comando xargs docker rmi
.
docker images -a | grep "pattern" | awk ‘{print $3}’ | xargs docker rmi
bashEliminare tutte le immagini Docker
La rimozione di tutte le immagini Docker dal sistema deve essere ben ponderata ed eseguita con estrema cautela, in quanto si tratta di un’operazione irreversibile, che potrebbe rendere tutti i tuoi container non più avviabili.
Primo passaggio: elencare tutte le immagini
Prima di tutto, devi ottenere una panoramica di tutte le immagini attive e inattive presenti nel tuo sistema:
docker images -a
bashSecondo passaggio: eliminare tutte le immagini Docker
A questo punto puoi inoltrare la lista ottenuta con il passaggio precedente al comando docker rmi
. Così facendo rimuovi tutte le immagini.
docker rmi $(Docker-Images -a -q)
bashTrovi ulteriori istruzioni su come eliminare un volume Docker o come eliminare un container Docker nei nostri articoli. Ti spieghiamo anche che cos’è Docker e qual è la differenza tra i container Docker e i volumi dei container Docker.