Anonim

Jei jums reikia išsamios atvirojo kodo platformos, kad sukurtumėte programų ir infrastruktūros nepriklausomumą, „Docker“ yra jūsų saugiausias lažybas. Jei jau turėjote galimybę ja naudotis, jūs jau žinote, kokia ji yra pajėgi ir paprasta

Daugybė debesų ir IT įmonių mano, kad tai yra ypač naudinga, o jo populiarumas tikrai nusipelnė.

Vis dėlto tai nepadaro tobula. Įrodymas gali būti matomas atsižvelgiant į apribojimus, susijusius su vaizdų, tomų, talpyklų ir tinklų pašalinimu. Nors šios komandos yra, jos nėra tokios išsamios, kaip vartotojai gali norėti.

Čia pamatysite pagrindines problemas, su kuriomis susiduria vartotojai, ir jų sprendimus. Sužinosite, kaip lengvai pašalinti vaizdus ir sudėtinius rodinius.

Problema

Konteinerių technologija suteikia galimybę vizualizuoti operacines sistemas. Tai leidžia programai sukomplektuoti viską, ko reikia jai paleisti, o tai leidžia veikti nepriklausomai nuo OS.

Sudėtinio rodinio vaizdai yra savarankiški vykdomieji programų paketai, kuriuose yra viskas, ko reikia, kad programa tinkamai veiktų. Kiekviename paveikslėlyje yra vykdymo laikas, kodas, konfigūracijos ir sistemos įrankiai bei bibliotekos.

Kai naudojate „Docker“, šie vaizdai kaupiasi. Laikui bėgant susikaupė daug nenaudojamų vaizdų, duomenų apimties ir talpyklų, sukuriant perkrautą „Docker“ aplinką. Kai tai atsitiks, būtina atnaujinti aplinką, kad platforma veiktų taip, kaip turėtų.

Yra keletas komandų, kurios gali tai padaryti, todėl pažvelkime į pagrindinius „Docker“ aplinkos netvarkos būdus.

„Docker“ vaizdų pašalinimas

Prieš pašalindami nereikalingus vaizdus, ​​turite juos atskirti nuo naudingų. Tai galima lengvai padaryti, surašydamas visus vaizdus, ​​kuriuos turi jūsų sistema, naudodamas vaizdų tvarkymo komandą.

Štai kaip tai atrodo:

$ docker image #list the most recently created images

Arba

$ docker image -a #list all images

Su antrąja komanda pamatysite visus savo doko atvaizdus. Viskas, ką jums reikia padaryti, tai rasti vadinamuosius kabančius vaizdus. Tai visi „Docker“ vaizdai, kuriuose nėra žymos. Be žymos nėra ryšio su pažymėtais vaizdais, vadinasi, jie nebenaudingi.

Galite ištrinti vieną ar daugiau vaizdų naudodami vaizdo ID. Norėdami tai padaryti, naudokite vieną iš šių komandų:

$ docker rmi d65c4d6a3580 #remove a single image

$ docker rmi 612866ff4869 e19e33310e49 abe0cd4b2ebc #remove multiple images

Patogesnis sprendimas yra naudoti filtro vėliavėlę -f, kad būtų galima išvardyti visus kabančius vaizdus.

Norėdami ištrinti šiuos vaizdus ir išvalyti vietą diske, naudokite vieną iš šių komandų:

$ docker image prune #interactively remove dangling images

Arba

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

Visus „Docker“ vaizdus galite pašalinti panašiu būdu. Surašykite juos naudodamiesi komanda $ docker images –a, tada pašalinkite juos naudodamiesi šiais būdais:

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

Kita galimybė yra ištrinti tam tikro modelio vaizdus. Norėdami juos išvardyti, naudokite šią komandą:

$ docker images -a | grep "pattern"

Tada pašalinkite juos naudodamiesi:

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

Konteinerių išėmimas

Kitas dalykas, kurį galbūt norėsite padaryti dirbdami su „Docker“ tam tikrą laiką - ištrinkite vieną ar daugiau talpyklų.

Panašiai kaip vaizdo pašalinimą, pirmiausia turite juos išvardyti naudodami šią komandą:

$ docker ps

Arba

$ docker ps -a

Radę konteinerius, kuriuos norite pašalinti, padarykite jų ID.

$ docker rm 0fd99ee0cb61 #remove a single container

$ docker rm 0fd99ee0cb61 0fd99ee0cb61 #remove multiple containers

Jei rodomas konteineris, kurį bandote pašalinti, galite sustabdyti jį naudodami šią komandą:

$ docker stop 0fd99ee0cb61

$ docker rm -f 0fd99ee0cb61

Galiausiai galite sustabdyti ir pašalinti visus nereikalingus konteinerius naudodami šias komandas:

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

$ docker container prune #interactively remove all stopped containers

Arba

$ docker rm $(docker ps -qa)

Tai leis jums atlaisvinti vertingos vietos diske ir pradėti iš naujo.

Galutinis žodis

Kaip matote, „Docker“ vaizdų ir konteinerių pašalinimas nėra toks bauginantis, kaip gali būti. Dabar, kai žinote šias komandas, galite labiau valdyti savo „Docker“ patirtį.

Žinoma, tai tik kelios komandos, ir jūs galite naudoti daugybę kitų kombinacijų. Vis dėlto šie darbą atliks puikiai, todėl drąsiai išbandykite.

Kaip ištrinti visus dokų vaizdus