Eski Docker kapsayıcıları nasıl kaldırılır
Bu soru https://stackoverflow.com/questions/17014263/should-i-be-concerned-about-excess-non-running-docker-containers ile ilgilidir.
Eski konteynerleri nasıl çıkaracağımı merak ediyorum. Docker rm 3e552code34atek bir tanesini kaldırmanıza izin veriyor, ancak bende zaten çok var. docker rm --help
bir seçim seçeneği sunmuyor (hepsi veya resim adına göre gibi).
Belki de bu konteynerlerin depolandığı ve bunları manuel olarak kolayca silebileceğim bir dizin vardır?
1159
3
Docker 1.13.x]1'den beri Docker container prune'yi kullanabilirsiniz:
Bu, durdurulan tüm konteynerleri kaldıracaktır ve tüm platformlarda aynı şekilde çalışmalıdır.
Ayrıca bir Docker system prune vardır:
Bu, kullanılmayan tüm kapsayıcıları, ağları, görüntüleri (hem sarkan hem de referanssız) ve isteğe bağlı olarak birimleri tek bir komutla temizleyecektir.
Daha eski Docker sürümlerinde, ihtiyacınız olanı elde etmek için Docker komutlarını diğer Unix komutlarıyla birlikte dizebilirsiniz. İşte haftalar öncesine ait eski konteynerlerin nasıl temizleneceğine dair bir örnek:
Hakkını teslim etmek gerekirse, bu örnek https://twitter.com/jpetazzo/status/347431091415703552 adresinden alınmıştır.
Guillaume J. Charmes'den aldığım bir başka yöntem (hakkını teslim etmek gerekir):
tüm konteynerleri zarif bir şekilde kaldıracaktır.
Ve Bartosz Bilicki tarafından, Windows için:
PowerShell için:
Docker 1.13 (Q4 2016) ile bir güncelleme, VonC (bu başlıkta daha sonra):
docker system prune
kullanılmayan TÜM verileri silecektir (yani, sırayla: durdurulan kapsayıcılar, kapsayıcı içermeyen birimler ve kapsayıcı içermeyen görüntüler).Bakınız PR 26108 ve commit 86de7c0, Docker daemon verilerinin diskte ne kadar yer kapladığını görselleştirmeyi kolaylaştırmak ve "gereksiz" fazlalıkları kolayca temizlemeye izin vermek için birkaç yeni komut sunuyor.
İlk olarak, kaldırmaya çalışmadan önce çalışan konteynerleri durdurun
Çalışan konteynerleri kaldırın
Durdur
yerine
öldürkullanabilirsiniz. Benim durumumda
stop`u tercih ediyorum çünkü her seferinde yeni bir tane oluşturmak yerine onları yeniden çalıştırma eğilimindeyim, bu yüzden onları güzelce kapatmaya çalışıyorum.Not: Bir konteyneri durdurmaya çalışmak size hata verecektir:
Tüm konteynerleri kaldırın