Kā dzēst Docker konteinerus un atbrīvot resursus
Konteineri aizņem vietu uz diska un resursus jūsu uzņēmējā sistēmā. Atbrīvojoties no konteineriem, kas vairs nav vajadzīgi, varat atbrīvot vērtīgu uzglabāšanas vietu un uzlabot sistēmas veiktspēju.
Kad vajadzētu dzēst Docker konteinerus?
Docker konteineri ir izolētas, izpildāmas vienības, kas satur lietojumprogrammas un to atkarības. Dažādās situācijās ir lietderīgi dzēst Docker konteinerus, lai nodrošinātu, ka jūsu Docker vide ir pēc iespējas efektīvāka, drošāka un vieglāk pārvaldāma.
Pirmkārt un galvenokārt, jums vajadzētu dzēst konteinerus, tiklīdz tie ir izpildījuši savu uzdevumu. Kad konteiners ir veiksmīgi pabeidzis savu konkrēto uzdevumu vai procesu, nav jēgas to paturēt savā vidē. Tas novērš situāciju, kad neaktīvi konteineri nevajadzīgi aizņem resursus un vietu.
Vēl ir ieteicams dzēst konteinerus, kas netiek aktīvi izmantoti vai nav atjaunināti jau ilgu laiku. Tas ir īpaši svarīgi, lai samazinātu drošības riskus, jo vecākiem konteineriem var būt novecojušas programmatūras versijas vai drošības ievainojamības.
Ja jums ir bažas par konteinera drošību vai ja jums rodas aizdomas, ka tā drošība varētu būt apdraudēta, jums tas nekavējoties jāizdzēš. Tas pats attiecas uz konteineriem, kurus nevar palaist konfliktu vai citu problēmu dēļ.
Kā dzēst vienu vai vairākus Docker konteinerus
Viena vai vairāku konkrētu Docker konteineru dzēšana ir izplatīta darbība, ja ir nepieciešams no Docker uzņēmējdatora izdzēst nevajadzīgus vai neaktīvus konteinerus.
1. solis: Uzskaitiet konteineru identifikatorus vai nosaukumus
Vispirms jums jānoskaidro to konteineru identifikatori vai nosaukumi, kurus vēlaties izdzēst. Lai parādītu visu darbojošos un apturēto konteineru sarakstu, varat izmantot šādu komandu:
docker ps -abash2. solis: Izņemiet trauku
Pēc **komandas docker rm** var vienkārši ievadīt konteineru ID vai nosaukumus, tos atdalot ar atstarpēm:
docker rm container_id_or_name1 container_id_or_name2bashKā izdzēst Docker konteineru, izietot no programmas
Lai konteineru automātiski dzēstu pēc tā darbības beigām, konteineru palaižot ar komandu docker run, norādiet parametru --rm. Šis parametrs nodrošina, ka konteiners tiek automātiski dzēsts, tiklīdz tas ir pabeidzis darbu.
docker run --rm image_namebashKā izbeigt visus pašlaik darbojošos Docker konteinerus
Ir iespējams arī vienlaikus izdzēst visus konteinerus, kas ir beiguši darbību, filtrējot tos pēc statusa un izdzēšot ar komandu rm.
1. solis: Uzskaitīt izbeigtos konteinerus
Izmantojot -f status=exited opciju, varat filtrēt konteineru sarakstu, lai parādītu tikai tos konteinerus, no kuriem ir iziet.
docker ps -a -f status=exitedbash2. solis: Noņemiet iztukšotos konteinerus
Mēs izmantojam iepriekšējā soļa rezultātus, lai iegūtu izbeigto konteineru identifikatorus, un nododam tos tieši komandai docker rm “.
docker rm $(docker ps -a -f status=exited -q)bashKā izdzēst visus Docker konteinerus, kuriem ir vairāk nekā viens filtrs
Jūs varat atbrīvoties no Docker konteineriem, kuriem ir vairāk nekā viens filtrs, ja izmantojat docker ps komandu kopā ar filtra opcijām un pēc tam izvadi nododat docker rm komandai.
1. solis: Konteineru saraksts ar filtriem
Vispirms ievadām komandu docker ps kopā ar filtrēšanas opcijām, lai iegūtu konteineru sarakstu atbilstoši vēlamajiem kritērijiem. „created“ ir vēl viens izvēles statuss līdzās statusam „exited“. Konteineri ar statusu „created“ ir konteineri, kas ir izveidoti, bet vēl nav izpildīti.
docker ps -a -f status=exited -f status=createdbash2. solis: Docker konteinera noņemšana
Tāpat kā iepriekš minētajā piemērā, mēs nododam izvadi docker rm.
docker rm $(docker ps -a -f status=exited -f status=created -q)bashKā izdzēst Docker konteinerus pēc noteiktas shēmas
Visu Docker konteineru atrašana, kas atbilst noteiktam paraugam, un to izdzēšana, izmantojot awk, xargs un docker rm, ir efektīvs veids, kā selektīvi dzēst konteinerus.
1. solis: Uzskaitiet visus konteinerus ar noteiktu modeli
Ja izmantosiet komandu docker ps -a kopā ar komandu grep, jūs iegūsiet visus konteinerus, kuru nosaukumi vai birkas atbilst noteiktam paraugam. Piemēram, varat uzskaitīt visus konteinerus, kuru nosaukumi sākas ar „test-“:
docker ps -a | grep "test-"bash2. solis: Docker konteineru noņemšana
Komanda awk ļauj izvēlēties konkrētas ailes no izvades rezultāta. Šajā gadījumā mēs vēlamies izgūt pirmo aili, kurā ir konteineru ID. Mēs varam izmantot xargs, lai nodotu ID komandai docker rmi un izdzēstu Docker konteinerus.
docker ps -a | grep "test-" | awk '{print $1}' | xargs docker rmibashKā apturēt un izdzēst visus Docker konteinerus
Jūs varat vienlaikus apturēt un izdzēst visus aktīvos un neaktīvos konteinerus savā sistēmā. Tas var būt noderīgi, ja vēlaties veikt Docker vides pamatīgu tīrīšanu.
1. solis: Uzskaitiet visus konteinerus
Ievadiet šādu komandu, lai pārbaudītu konteineru sarakstu:
docker ps -abash2. solis: Apstādiniet konteinerus
Kad būsiet gatavs, nosūtiet izvadi uz docker stop. Tas apturēs visus konteinerus.
docker stop $(docker ps -a -q)bash3. solis: Docker konteineru noņemšana
Kad visi konteineri ir apturēti, tos var izdzēst, izmantojot komandu docker rm:
docker rm $(docker ps -a -q)bashAtšķirībā no parastajiem Docker konteineriem, Docker konteineru apjomi ir mehānismi, kas nodrošina datu saglabāšanu un koplietošanu starp konteineriem un uzņēmēj sistēmu.
Mūsu digitālajā ceļvedī varat atrast citus Docker apmācību materiālus, tostarp par to, kā noņemt Docker apjomu un kā dzēst Docker attēlu.