Späť na blog

Vyčistenie prostriedkov Docker – obrazy, kontajnery a zväzky

Vyčistenie prostriedkov Docker – obrazy, kontajnery a zväzky

Docker je v súčasnosti jedným z najpopulárnejších produktov v organizáciách. Veľmi uľahčuje proces správy aplikácií v kontajneroch. Docker poskytuje aplikáciám prenosnosť, výkon, flexibilitu, škálovateľnosť a izoláciu, keďže využíva kontajnery. Kontajnery sú prenosnejšie a vyžadujú menej zdrojov ako virtuálne počítače. Pri práci s Dockerom máte tendenciu hromadiť nadmerné množstvo nepoužívaných obrazov, zväzkov a kontajnerov. Tieto zdroje budú zahlcovať výstup a spotrebovávať veľa miesta na disku. V tomto návode sa dozviete, ako vyčistiť zdroje Dockeru a usporiadať váš server.

Vyčistiť všetko

Jediným príkazom môžete vyčistiť všetky zdroje Dockeru vrátane obrazov, zastavených kontajnerov, zväzkov a sietí. Môžete si vybrať jednu z možností nižšie:

Referencia: Osirelé zdroje sú tie, ktoré nesúvisia so žiadnym spusteným kontajnerom.

Možnosť 1:
Týmto sa odstráni:
– všetky zastavené kontajnery
– všetky siete, ktoré nepoužíva aspoň jeden kontajner
– všetky osirelé obrazy
– celá osirelá vyrovnávacia pamäť zostavenia

Možnosť 2:
Týmto sa odstráni:
– všetky zastavené kontajnery
– všetky siete, ktoré nepoužíva aspoň jeden kontajner
– všetky obrazy, s ktorými nie je spojený aspoň jeden kontajner
– celá vyrovnávacia pamäť zostavenia

Možnosť 3:
Týmto sa odstráni:
– všetky zastavené kontajnery
– všetky siete, ktoré nepoužíva aspoň jeden kontajner
– všetky zväzky, ktoré nepoužíva aspoň jeden kontajner
– všetky obrazy, s ktorými nie je spojený aspoň jeden kontajner
– celá vyrovnávacia pamäť zostavenia

docker prune options

Odstraňovanie obrazov Docker

Ak chcete odstrániť konkrétny obraz, musíte poznať jeho ID obrazu. ID obrazu kontajnera Docker môžete nájsť pomocou príkazu “docker images”, ako je vysvetlené v našom návode na ako nainštalovať & prevádzkovať Docker na Ubuntu.

Zoznam obrazov:
Odstrániť obraz:
docker rmi

Odstraňovanie osirelých obrazov:

Keď zostavujete obraz Docker, vo všeobecnosti má niekoľko vrstiev obrazov. Osirelé obrazy sú vrstvy, ktoré nemajú žiadny vzťah k žiadnemu označenému obrazu. Osirelé obrazy spotrebúvajú miesto na disku, ale neslúžia žiadnemu účelu. Môžete ich zobraziť pomocou príkazu:

Tieto obrazy môžete odstrániť spustením nasledujúceho príkazu:

Odstraňovanie obrazov na základe vzoru

Pomocou príkazu “grep” môžete ľahko nájsť obrazy na základe konkrétneho vzoru a potom ich odstrániť odovzdaním do príkazu “docker rmi” pomocou “awk”. Môžete použiť nasledujúce príkazy a v každom z nich nahradiť “pattern”:

Zoznam:
Odstrániť:
Odstrániť všetky obrazy

Všetky docker obrazy môžete vypísať pomocou príkazu:

Keď sa rozhodnete ich všetky odstrániť, môžete na ich vymazanie použiť tento príkaz:

 

Odstraňovanie kontajnerov:

Teraz, keď ste vyčistili všetky nepotrebné obrazy, je čas vymazať niektoré z kontajnerov, ktoré už nie sú potrebné.

Na vypísanie kontajnerov môžete použiť príkaz:

Na odstránenie kontajnerov použite príkaz:

docker rm container
Dočasné spúšťanie kontajnerov

Ak chcete spustiť kontajner iba raz, môžete zvoliť jeho automatické odstránenie po ukončení. Môžete tak urobiť pomocou príkazu:

Odstraňovanie ukončených kontajnerov

Ukončené kontajnery môžete filtrovať pomocou argumentu “-f”. Zoznam ukončených kontajnerov vypíšete pomocou príkazu:

Teraz, keď ste ich vyfiltrovali, odstráňte ich pomocou tohto príkazu:

Odstraňovanie kontajnerov na základe vzoru

Kontajnery môžete ľahko nájsť na základe konkrétneho vzoru pomocou príkazu “grep” a potom ich odstrániť odovzdaním do príkazu “docker rm” pomocou “awk”. Môžete použiť nasledujúce príkazy a v každom z nich nahradiť “pattern”.

Zoznam:
Odstrániť:
Zastavenie a odstránenie všetkých kontajnerov

Predtým si prezrite všetky kontajnery na vašom serveri tak, že ich vypíšete. Až keď si budete istí, že ich chcete vymazať, spustite nasledujúce príkazy:

Vypíšte kontajnery na kontrolu:

Zastaviť a odstrániť:

Odstraňovanie zväzkov

Odstránenie konkrétneho zväzku

Na odstránenie konkrétneho zväzku musíte poznať jeho názov. Ak ho chcete zistiť, môžete vypísať zoznam zväzkov.

Zoznam:
Odstrániť:
docker volume rm
Odstránenie osirotených zväzkov

Keď odstránite kontajner, zväzok, ktorý je k nemu pripojený, sa neodstráni automaticky. Takýto zväzok sa nazýva osirotený zväzok. Na vyhľadanie takýchto zväzkov použite argument filtra v príkaze:

Na odstránenie všetkých takýchto osirotených zväzkov použite príkaz:

 

Odstránenie kontajnera a jeho nepomenovaného zväzku

Ak ste pri spúšťaní kontajnera vytvorili anonymný alebo nepomenovaný zväzok, môžete ho odstrániť spolu s kontajnerom pomocou jediného príkazu. Ak je však zväzok pomenovaný, vymaže sa iba kontajner.

 

Teraz, keď máte tento ťahák, mali by ste byť pripravení vyčistiť prostriedky Dockeru, ktoré už na vašom serveri nie sú potrebné.

Príjemnú prácu!

author

Akshay Nagpal

Autor · CloudSigma

Preslav Dobrev je kreatívny dizajnér v spoločnosti CloudSigma, ktorý sa zameriava na konzistentnú firemnú identitu prostredníctvom tradičných a inovatívnych marketingových kanálov. Dokáže brilantne spájať umeleckú víziu so strategickým marketingom, čím vytvára pôsobivé príbehy značky.

Komentáre

Zatiaľ žiadne komentáre. Buďte prvý.