Aşağıdaki resimlere sahibim:
alex@alexvps:~$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
<none> <none> 70c0e19168cf 5 days ago 1.069 GB
<none> <none> c2ce80b62174 8 days ago 399.2 MB
<none> <none> 60afe4036d97 8 days ago 325.1 MB
ve onlardan birini kaldırmaya çalıştığımda şunu alıyorum:
alex@alexvps:~$ sudo docker rmi 60afe4036d97
Error: Conflict, 60afe4036d97 wasn't deleted
2014/01/28 00:54:00 Error: failed to remove one or more images
Onları nasıl kaldırabilirim? Neden böyle bir çatışma var?
Olası neden: Bunun nedeni, bu görüntünün şu anda çalışan bir kapsayıcı tarafından kullanılıyor olması olabilir. Böyle bir durumda, çalışan konteynerleri listeleyebilir, ilgili konteyneri durdurabilir ve ardından imajı kaldırabilirsiniz:
docker ps
docker stop <containerid>
docker rm <containerid>
docker rmi <imageid>
Docker ps ile konteyner bulamıyorsanız, bunu zaten çıkmış olan tüm konteynerleri listelemek ve kaldırmak için kullanabilirsiniz.
docker ps -a | grep 60afe4036d97
docker rm <containerid>
Not: Volume-Only` kapsayıcıları kullanmanız durumunda, çıkılan tüm kapsayıcıları bir kerede silmeye dikkat edin. Bunlar Exit
durumunda kalır, ancak yararlı veriler içerir.
Bash'te:
for i in `sudo docker images|grep \<none\>|awk '{print $3}'`;do sudo docker rmi $i;done
Bu, "
Önce bu imajlar üzerinde oluşturulan tüm gereksiz kapsayıcıları durdurmanız / silmeniz gerekir.
Bir göz atın: https://stackoverflow.com/questions/17236796/how-to-remove-old-docker-io-containers.
Bundan sonra @marcell çözümünü kullanın.