Anonim

Se hai bisogno di una piattaforma container open source completa per creare indipendenza tra app e infrastruttura, Docker è la soluzione più sicura. Se hai avuto la possibilità di usarlo, sai già quanto è capace e facile da usare

Un gran numero di aziende cloud e IT lo trovano estremamente utile e la sua popolarità è sicuramente meritata.

Tuttavia, questo non lo rende perfetto. La prova può essere vista nelle limitazioni che derivano dalla rimozione di immagini, volumi, contenitori e reti. Anche se questi comandi sono disponibili, non sono così completi come gli utenti potrebbero desiderare.

Qui vedrai i principali problemi che gli utenti incontrano e le soluzioni per loro. Imparerai come rimuovere immagini e contenitori in modo semplice.

Il problema

La tecnologia container offre un modo per visualizzare i sistemi operativi. Consente a un'app di essere impacchettata con tutto ciò che serve per eseguirla, il che le consente di agire indipendentemente dal sistema operativo.

Le immagini del contenitore sono pacchetti di app eseguibili indipendenti che includono tutto il necessario per il corretto funzionamento di un'app. Runtime, codice, configurazioni, strumenti di sistema e librerie sono contenuti in ogni immagine.

Mentre usi Docker, queste immagini si accumulano. Nel tempo, viene accumulato un gran numero di immagini, volumi di dati e contenitori non utilizzati, creando un ambiente Docker affollato. Quando ciò accade, è necessario aggiornare l'ambiente in modo che la piattaforma funzioni come dovrebbe.

Esistono più comandi che possono far sì che ciò accada, quindi diamo un'occhiata ai modi principali per disordinare l'ambiente Docker.

Rimozione delle immagini Docker

Prima di poter rimuovere le immagini non necessarie, è necessario distinguerle da quelle utili. Questo può essere fatto facilmente elencando tutte le immagini contenute nel sistema usando il comando di gestione delle immagini.

Ecco come appare:

$ docker image #list the most recently created images

O

$ docker image -a #list all images

Con il secondo comando, vedrai tutte le immagini della finestra mobile. Tutto quello che devi fare è trovare le cosiddette "immagini penzolanti". Queste sono tutte immagini Docker che non contengono un tag. Senza il tag, non c'è alcun collegamento con le immagini taggate, il che significa che non sono più utili.

È possibile eliminare una o più immagini utilizzando l'ID immagine. Per fare ciò, utilizzare uno di questi comandi:

$ docker rmi d65c4d6a3580 #remove a single image

$ docker rmi 612866ff4869 e19e33310e49 abe0cd4b2ebc #remove multiple images

Una soluzione più conveniente è usare il flag -f filter per elencare tutte le immagini sospese.

Per eliminare queste immagini e ripulire lo spazio su disco, utilizzare uno dei seguenti comandi:

$ docker image prune #interactively remove dangling images

O

$ docker rmi $(docker images -q -f dangling=true)

È possibile rimuovere tutte le immagini Docker in modo simile. Elencarli usando il comando $ docker images –a quindi rimuoverli usando quanto segue:

$ (docker rmi $(docker images -a -q)

Un'altra opzione è quella di eliminare le immagini che seguono un certo schema. Per elencarli, utilizzare il seguente comando:

$ docker images -a | grep "pattern"

Quindi, rimuoverli utilizzando:

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

Rimozione di contenitori

Un'altra cosa che potresti voler fare dopo aver lavorato con Docker per un certo periodo di tempo è eliminare uno o più contenitori.

Simile alla rimozione delle immagini, è innanzitutto necessario elencarli utilizzando il comando seguente:

$ docker ps

O

$ docker ps -a

Quando trovi i contenitori che vuoi rimuovere, usa il loro ID per farlo.

$ docker rm 0fd99ee0cb61 #remove a single container

$ docker rm 0fd99ee0cb61 0fd99ee0cb61 #remove multiple containers

Nel caso in cui il contenitore che si sta tentando di rimuovere sia in esecuzione, è possibile utilizzare il comando seguente per interromperlo:

$ docker stop 0fd99ee0cb61

$ docker rm -f 0fd99ee0cb61

Infine, è possibile arrestare e rimuovere tutti i contenitori non necessari utilizzando i seguenti comandi:

$ docker stop $(docker ps -a -q) #stop all containers

$ docker container prune #interactively remove all stopped containers

O

$ docker rm $(docker ps -qa)

Ciò ti consentirà di liberare prezioso spazio su disco e ricominciare da capo.

L'ultima parola

Come puoi vedere, rimuovere immagini e contenitori Docker non è così scoraggiante come potrebbe. Ora che conosci questi comandi, puoi avere un maggiore controllo sulla tua esperienza Docker.

Naturalmente, questi sono solo alcuni dei comandi e puoi usare una varietà di altre combinazioni. Tuttavia, questi faranno il lavoro bene, quindi sentiti libero di provarli.

Come eliminare tutte le immagini della finestra mobile