Docker prune -komennon käyttö – opas esimerkkeineen
Docker prune poistaa tarpeettomat kohteet, kuten pysäytetyt kontit, käyttämättömät levyt sekä vanhat verkot ja kuvat. Tämä auttaa optimoimaan kiintolevytilan käyttöä ja vapauttaa tallennustilaa.
Mikä on Docker prune?
Docker prune tai system prune on hyödyllinen työkalu, jonka avulla voit järjestelmällisesti puhdistaa tarpeettomiksi jääneet Docker-resurssit ja vapauttaa muistia. Jos Docker-kontteja, -kuvia, -verkkoja ja -levyosioita ei käytetä pitkään aikaan, ne voivat viedä huomattavan määrän levytilaa. prune avulla voit poistaa nämä käyttämättömät resurssit nopeasti, jolloin järjestelmäsi pysyy siistinä ja toimii parhaalla mahdollisella tavalla.
Erityisesti kehitysympäristöissä, joissa uusia kontteja luodaan ja testataan usein, voi kertyä huomattava määrä vanhentuneita objekteja. Docker prune poistaa tehokkaasti paitsi käyttämättömät kontit ja kuvat myös verkot ja levyt, joita ei enää tarvita. Tämä virtaviivaistaa Docker-resurssien hallintaa ja minimoi järjestelmän ylikuormittumisen ja sekavuuden riskin.
Mihin Docker prune käytetään?
Komento prune sopii moniin tilanteisiin Docker-työskentelyssä. Alla on lueteltu neljä tyypillistä käyttötapausta.
Työprosessien optimointi: Docker-ympäristöjä käytetään usein kehitystyössä, testauksessa ja tuotantokäytössä. Ilman säännöllistä puhdistusta tämä voi johtaa tarpeettomien resurssien nopeaan kertymiseen. Tällainen ylikuormitus ei ainoastaan lisää muistin käyttöä, vaan voi myös heikentää järjestelmän suorituskykyä. Poistamalla käyttämättömät resurssit Docker prune mahdollistaa järjestelmäresurssien tehokkaamman käytön. Tämä on erityisen tärkeää pilvipohjaisissa ympäristöissä, joissa kustannukset nousevat tallennus- ja laskentaresurssien kysynnän kasvaessa.
Paranna tietoturvaa: Tarpeettomat ja vanhentuneet Docker-resurssit voivat aiheuttaa tietoturvariskejä. Docker prune poistaa käyttämättömät kontit, kuvat, verkot ja levyt, mikä vähentää riskiä siitä, että vanhentuneet ja mahdollisesti haavoittuvat komponentit jäävät suojaamatta. Puhdas Docker-ympäristö minimoi hyökkäyskohteiden määrän ja parantaa IT-infrastruktuurisi yleistä tietoturvatasoa.
Suorituskyvyn parantaminen: Ylikuormitettu Docker-ympäristö voi heikentää järjestelmän suorituskykyä kuluttamalla turhaan resursseja, kuten prosessoria ja muistia. Säännöllinen puhdistus Docker prune avulla vapauttaa levytilaa ja tehostaa konttien hallintaa ja suorittamista. Tämä lyhentää latausaikoja huomattavasti, nopeuttaa sovellusten käyttöönottoa ja parantaa järjestelmän yleistä reagointikykyä.
Yksinkertaistettu ylläpito: Docker prune säännöllinen käyttö yksinkertaistaa merkittävästi Docker-ympäristön ylläpitoa. Poistamalla käyttämättömät resurssit se vähentää kehittäjien hallintatehtävien monimutkaisuutta. Tämä helpottaa aktiivisten ja olennaisten Docker-komponenttien seurantaa ja nopeuttaa vianmääritystä. Näin ollen tiimit säästävät aikaa hallinnollisissa tehtävissä ja voivat keskittyä enemmän sovellusten kehittämiseen ja parantamiseen sen sijaan, että joutuisivat käsittelemään tarpeettomia resursseja.
Mikä on Docker prune:n syntaksi?
Onko sinulla Docker-ympäristö ja haluatko puhdistaa resursseja levytilan vapauttamiseksi ja hallinnan yksinkertaistamiseksi? Siinä tapauksessa suorita seuraava komento prune palvelun poistamiseksi:
docker system prunebashOletusasetuksena Docker tunnistaa pysäytetyt kontit, käyttämättömät kuvat, verkot ja levyt, jotka voidaan poistaa, ja pyytää vahvistusta ennen poistamista. Jatka kirjoittamalla y ja painamalla Enter-näppäintä. Vaihtoehtoisesti voit käyttää vaihtoehtoa -f ohittaaksesi vahvistuksen ja suorittaaksesi puhdistuksen välittömästi:
docker system prune -fbashVinkki: Ennen Docker prune käyttöä on hyvä tarkistaa, mitkä Docker-resurssit järjestelmässä tällä hetkellä ovat käytettävissä. Suorita seuraavat komennot saadaksesi luettelon kaikista kontteista, kuvista, verkoista ja levyalueista:
docker ps -a
docker images
docker volume ls
docker network lsbashDocker prune asetukset
Seuraavassa taulukossa on yhteenveto kohdan docker system prune eri vaihtoehdoista.
| Vaihtoehto | Kuvaus |
|---|---|
--all, -a
|
Poistaa kaikki käyttämättömät Docker-resurssit. |
--force, -f
|
Suorittaa puhdistuksen ilman käyttäjän vahvistusta. |
--volumes
|
Poistaa käyttämättömät levyt. |
--filter, -f
|
Mahdollistaa poistettavien resurssien suodattamisen kriteerien mukaan. |
--help
|
Näyttää ohjeet komennon käytöstä. |
Kuinka käyttää Docker prune -komentoa
Docker tarjoaa erilaisia komentoja, joiden avulla tiettyjä resurssityyppejä voidaan puhdistaa kohdennetusti. Tämä antaa sinulle joustavuuden hallita tarkasti, mitkä resurssit poistetaan.
Docker prune --filter
Suodattimen avulla voit hallita poistettavien resurssien valintaa, kuten kontteja, kuvia, verkkoja ja levyjä. Tästä on hyötyä kehitysympäristöissä, joissa luodaan helposti paljon väliaikaisia resursseja, jotka unohtuvat nopeasti.
Yleinen syntaksi on seuraava:
docker <command> prune --filter "filter=<value>"bashSuodatinvaihtoehtoja ovat muun muassa:
until: Suodattaa resurssit niiden luontipäivämäärän perusteella. Tässä<duration>voi olla numeerinen arvo, johon on liitetty yksikkö, kutenh(tuntia),m(minuuttia) tais(sekuntia).
docker <command> prune --filter "until=<duration>"bashEsimerkki: Poista kaikki pysäytetyt kontit, jotka ovat yli 24 tuntia vanhoja
docker container prune --filter "until=24h"bashlabel: Suodattaa resursseja niiden Docker-tunnisteiden perusteella
docker <command> prune --filter "label=<label>"bashEsimerkki: Poista kaikki käyttämättömät levyt, joiden tunniste on mylabel
docker volume prune --filter "label=mylabel"bashdangling: Suodattaa resurssit, joita kontti ei enää käytä
docker <command> prune --filter "dangling=true"bashEsimerkki: Poista kaikki kuvat, joita ei enää käytetä (roikkuvat kuvat)*
docker image prune --filter "dangling=true"bashEdellä mainittujen pääsuodattimien lisäksi on olemassa myös resurssityypistä riippuvia tarkempia suodatinvaihtoehtoja:
beforejasincekuville: Suodattaa kuvat niiden luontipäivämäärän perusteella, joko ennen tiettyä ajankohtaa tai sen jälkeenexitedkontteja varten: Suodattaa kontit niiden lopetustilan perusteella (esimerkiksiexited=0onnistuneesti lopetetuille konteille)
Kuinka poistaa Docker-resursseja
Vaihe 1: Avaa järjestelmässäsi pääte tai komentorivi.
Vaihe 2: Suorita Docker prune järjestelmän puhdistamiseksi:
docker {resource} prunebashKorvaa {resource} niiden resurssien tyypillä, jotka haluat puhdistaa. Kelvollisia arvoja ovat container, image, volume ja network.
Kuinka poistaa Docker-kontteja
Oletusasetuksina Docker ei vapauta kontteja automaattisesti niiden elinkaaren päätyttyä. On tärkeää tarkistaa säännöllisesti pysäytetyt kontit ja puhdistaa ne tarpeen mukaan, jotta varatut resurssit vapautuvat käynnissä oleville kontteille. Tähän on kaksi tapaa.
docker rm: Komentodocker rmon tarkoitettu yhden tai useamman Docker-kontin manuaaliseen poistamiseen. Jos tiedät tarkalleen, mitkä kontit haluat poistaa, tämä on sopiva menetelmä. Sinun on määritettävä nimenomaisesti poistettavien konttien tunnukset tai nimet, jolloin voit poistaa ympäristöstäsi vain tietyt kontit vaikuttamatta muihin.
Tässä on esimerkki nimillä container1 ja container2 varustettujen konttien poistamisesta:
docker rm container1 container2bashdocker container prune: Sen sijaan komentodocker container pruneon tarkoitettu useiden pysäytettyjen konttien poistamiseen kerralla. Tämä menetelmä sopii erityisen hyvin tilan vapauttamiseen nopeasti ja tehokkaasti poistamalla kaikki pysäytetyt kontit, joissa ei tällä hetkellä ole käynnissä olevia prosesseja.
docker container prunebashTässä näkyvät kaikki pysäytetyt kontit, ja Docker pyytää vahvistusta ennen niiden poistamista. Tämä on erittäin kätevää ympäristöissä, joissa luodaan paljon väliaikaisia kontteja, jotka myöhemmin käyvät tarpeettomiksi.
Docker-ympäristön päivittäisessä hallinnassa ja ylläpidossa on suositeltavaa käyttää säännöllisesti docker container prune pysäytettyjen konttien automaattiseen puhdistamiseen. Tämä menetelmä säästää aikaa ja varmistaa, ettei tarpeettomat resurssit heikennä järjestelmän suorituskykyä. Sen sijaan docker rm sopii erinomaisesti tiettyjen konttien poistamiseen kohdennetusti ja hallitusti, olipa kyseessä sitten testaus, kehitys tai muut erityistarpeet.
Kuinka poistaa Docker-kuvat
Docker-kuvat ovat konttien rakennuspalikoita. Niistä voi ajan mittaan kertyä useita eri versioita ja tunnisteita. Kun luot tai päivität uusia kuvia, jäljelle jää usein vanhoja tai käyttämättömiä kuvia, joita kutsutaan ”dangling”-kuviksi. Ne vievät järjestelmän levytilaa ja voivat heikentää suorituskykyä, etenkin jos tällaisia kuvia on paljon.
Docker prune avulla voit tunnistaa ja poistaa kuvat, joita ei enää käytetä:
docker image prune [Options]bashMahdollisia vaihtoehtoja ovat esimerkiksi:
-a,--all: Tämä vaihtoehto poistaa paitsi irralliset kuvat myös käyttämättömät kuvat. Käyttämättömiä kuvia ovat ne, joilla ei enää ole tunnisteita ja joihin ei siten voida viitata suoraan tunnisteiden avulla.
docker image prune -abash-f,--force: Oletusasetuksena Docker pyytää vahvistusta ennen kuvien varsinaista poistamista. Valitsemalla-ftai--forcevoit ohittaa tämän vahvistusvaiheen ja suorittaa puhdistuksen välittömästi.
docker image prune -fbashKuinka poistaa kaikki Docker-kuvat
Voit myös poistaa järjestelmästäsi nopeasti ja perusteellisesti kaikki Docker-kuvat, joita et enää tarvitse. Käyttääksesi Docker prune tehokkaasti, avaa ensin terminaali tai komentokehote ja kirjoita seuraava komento:
docker image prune -a --forcebashTarkista ennen puhdistuksen aloittamista, mitkä kuvat poistetaan. Asetuksella -a voidaan poistaa käyttämättömiä kuvia, joita saatat vielä tarvita.
Kuinka poistaa Docker-tallennuslevyt
Volyymit ovat pysyviä ja säilyttävät tiedot, vaikka niihin liittyvä kontti ei enää olisi käynnissä. Ajan myötä nämä volyymit voivat kasvaa ja kuluttaa resursseja tarpeettomasti.
docker volume prunebashTämä komento etsii kaikki levyt, joilla ei ole aktiivisia kontteja. Saat luettelon poistettavaksi ehdotetuista levyistä, ja sinun on vahvistettava toimenpide ennen puhdistuksen suorittamista.
Sen sijaan komento docker volume rm poistaa nimenomaan yksittäisiä Docker-tallennuslevyjä. Tästä voi olla hyötyä, jos tiedät tarkalleen, minkä tallennuslevyn haluat poistaa, riippumatta siitä, onko se parhaillaan jonkin kontin käytössä. Poistaaksesi tietyn Docker-tallennuslevyn, käytä komentoa docker volume rm ja kirjoita sen perään tallennuslevyn nimi tai tunniste:
docker volume rm volume_namebashVarmista jälleen, että tiedät poistettavan levyn nimen tai tunnisteen, sillä tämä komento poistaa tiedot lopullisesti eikä sitä voi peruuttaa.
Kuinka poistaa Docker-verkot
Dockerissa verkot ovat keskeinen osa, jonka avulla kontit voivat kommunikoida keskenään riippumatta siitä, sijaitsevatko ne samalla isäntäkoneella vai useilla eri isäntäkoneilla. Docker-verkot säilyvät myös sen jälkeen, kun kontit on suljettu tai poistettu. Ajan myötä tämä voi johtaa käyttämättömien verkkojen kertymiseen, jotka kuluttavat resursseja tarpeettomasti. Komento docker prune network on helppo tapa tunnistaa ja poistaa nämä käyttämättömät verkot.
Komento on seuraavassa muodossa:
docker network prune [OPTIONS]bashDocker luo luettelon kaikista verkoista, joita aktiiviset kontit eivät enää käytä tai joihin ei enää viitata. Ennen verkkojen varsinaista poistamista pyydetään vahvistus.
Docker prune:n parhaat käytännöt
- Automaattinen puhdistus: Käytä automaattisia komentosarjoja tai työkaluja puhdistamaan säännöllisesti Docker-kuvat, kontit ja levyt, joita ei enää tarvita. Tämä pitää ympäristön siistinä ja optimoi suorituskyvyn.
- Turvapäivitykset ja korjaukset: Tarkista säännöllisesti Docker-moottoreiden, isäntäkäyttöjärjestelmien ja kaikkien Docker-kuvien turvapäivitykset ja korjaukset. Näiden komponenttien pitäminen ajan tasalla auttaa minimoimaan mahdolliset tietoturva-aukot.
- Valvonta ja lokit: Käytä valvonta- ja lokityökaluja konttien suorituskyvyn valvontaan, odottamattomien tapahtumien havaitsemiseen ja ennakoivan ylläpidon edistämiseen.
- Ulkoinen varmuuskopiointi: Luo rutiinit Docker-konttien tärkeiden tietojen ulkoiselle varmuuskopioinnille, kuten tietokannan sisällön tai konfiguraatiotiedostojen säännölliselle varmuuskopioinnille.
- Manuaalinen tarkistus ennen poistamista: Tarkista huolellisesti, etkö enää tarvitse tiettyjä resursseja, ennen kuin poistat ne. Tämä minimoi vahingossa tapahtuvan tietojen menetyksen tai käynnissä olevien prosessien keskeytyksen riskin.
Jos olet vasta aloittamassa Docker-käyttöä, suosittelemme lukemaan kattavan Docker-oppaamme.