Jos tarvitset kattavan, avoimen lähdekoodin säilytysalustan sovellusten ja infrastruktuurin riippumattomuuden luomiseksi, Docker on turvallisin veto. Jos sinulla on ollut mahdollisuus käyttää sitä, tiedät jo, kuinka kykenevä ja helppo käyttää sitä on
Lukuisat pilvi- ja IT-yritykset pitävät sitä erittäin hyödyllisenä, ja sen suosio on ehdottomasti ansaittu.
Silti tämä ei tee siitä täydellistä. Todiste näkyy rajoissa, jotka liittyvät kuvien, levyjen, astioiden ja verkkojen poistamiseen. Vaikka nämä komennot ovat käytettävissä, ne eivät ole niin kattava kuin käyttäjät saattavat haluta niiden olevan.
Täällä näet tärkeimmät ongelmat, joita käyttäjät kohtaavat, sekä ratkaisut heille. Opit kuinka poistaa kuvat ja säilöt helposti.
Ongelma
Kontitekniikka tarjoaa tavan visualisoida käyttöjärjestelmiä. Sen avulla sovellus voidaan pakata kaikkiin sen suorittamiseen tarvittaviin toimintoihin, minkä avulla se voi toimia itsenäisesti käyttöjärjestelmästä.
Säilytyskuvat ovat itsenäisiä suoritettavia sovelluspaketteja, jotka sisältävät kaiken tarvittavan, jotta sovellus toimisi kunnolla. Jokainen kuva sisältää suorituksen kestoajan, koodin, kokoonpanot ja järjestelmätyökalut ja kirjastot.
Kun käytät Dockeria, nämä kuvat kerääntyvät. Ajan myötä kertyy suuri määrä käyttämättömiä kuvia, tietomääriä ja säilöjä, mikä luo tungosta Docker-ympäristön. Kun näin tapahtuu, on välttämätöntä päivittää ympäristö niin, että alusta toimii kuin pitäisi.
On olemassa useita komentoja, jotka voivat saada tämän tapahtumaan, joten katsotaanpa tärkeimpiä tapoja pilata Docker-ympäristösi.
Dokerikuvien poistaminen
Ennen kuin voit poistaa tarpeettomia kuvia, sinun on erotettava ne hyödyllisistä. Tämä voidaan tehdä helposti luetteloimalla kaikki järjestelmän sisältämät kuvat käyttämällä kuvanhallintakomentoa.
Näyttää siltä, miltä se näyttää:
$ docker image #list the most recently created images
Tai
$ docker image -a #list all images
Toisella komennolla näet kaikki telakointikuvasi. Ainoa mitä sinun täytyy tehdä, on löytää ns. Roikkuvat kuvat. Nämä ovat kaikki Docker-kuvia, joissa ei ole tunnistetta. Ilman tunnistetta ei ole yhteyttä merkittyihin kuviin, mikä tarkoittaa, että ne eivät ole enää hyödyllisiä.
Voit poistaa yhden tai useamman kuvan käyttämällä Image ID -kuvaketta. Voit tehdä tämän käyttämällä yhtä näistä komennoista:
$ docker rmi d65c4d6a3580 #remove a single image
$ docker rmi 612866ff4869 e19e33310e49 abe0cd4b2ebc #remove multiple images
Kätevämpi ratkaisu on käyttää -f-suodatinlippua kaikkien roikkuvien kuvien luetteloimiseen.
Voit poistaa nämä kuvat ja puhdistaa levytilaa käyttämällä jotakin seuraavista komennoista:
$ docker image prune #interactively remove dangling images
Tai
$ docker rmi $(docker images -q -f dangling=true)
Voit poistaa kaikki Docker-kuvat samalla tavalla. Lista ne käyttämällä $ docker images –a -komentoa ja poista ne sitten seuraavasti:
$ (docker rmi $(docker images -a -q)
Toinen vaihtoehto on poistaa tietyn mallin mukaiset kuvat. Listaa ne käyttämällä seuraavaa komentoa:
$ docker images -a | grep "pattern"
Poista sitten ne käyttämällä:
$ docker images -a | grep "pattern" | awk '{print $3}' | xargs docker rmi
Kontien poistaminen
Toinen asia, jonka haluat ehkä tehdä, kun olet työskennellyt Dockerin kanssa tietyn ajan, on yhden tai useamman säilön poistaminen.
Kuten kuvan poisto, sinun on ensin luetteloitava ne seuraavan komennon avulla:
$ docker ps
Tai
$ docker ps -a
Kun löydät poistettavat säilöt, tee niiden tunnukset.
$ docker rm 0fd99ee0cb61 #remove a single container
$ docker rm 0fd99ee0cb61 0fd99ee0cb61 #remove multiple containers
Jos säilö, jonka yrität poistaa, on käynnissä, voit pysäyttää sen seuraavalla komennolla:
$ docker stop 0fd99ee0cb61
$ docker rm -f 0fd99ee0cb61
Viimeiseksi voit pysäyttää ja poistaa kaikki tarpeettomat säilöt seuraavilla komennoilla:
$ docker stop $(docker ps -a -q) #stop all containers
$ docker container prune #interactively remove all stopped containers
Tai
$ docker rm $(docker ps -qa)
Tämän avulla voit vapauttaa arvokasta levytilaa ja aloittaa uutta.
Lopullinen sana
Kuten näette, Docker-kuvien ja säilöjen poistaminen ei ole niin pelottavaa kuin voi. Nyt kun tiedät nämä komennot, voit hallita enemmän Docker-kokemustasi.
Tietenkin, nämä ovat vain joitain komennoista, ja voit käyttää monia muita yhdistelmiä. Silti nämä tekevät työstä hienosti, joten kokeile niitä vapaasti.
