Docker清除旧的/未使用的图像吗?

许多组织正在专门使用Docker,以便能够无缝地回滚部署的软件。 例如,给定一个名为newapi的图像,部署如下所示:

 # fetch latest docker pull newapi:latest # stop old one and terminate it docker stop -t 10 newapi-container docker rm -f newapi-container # start new one docker run ... newapi:latest 

如果出现问题,我们可以恢复到以前的版本,如下所示:

 docker stop -t 10 newapi-container docker rm -f newapi-container docker run ... newapi:0.9.2 

随着时间的推移,我们的本地Docker映像索引将变得巨大 。 Docker会自动从本地索引中删除旧的,未使用的映像以节省磁盘空间,还是我必须手动pipe理这些映像?

它不会为你做,但你可以使用下面的命令手动完成。

 #!/bin/bash # Delete all containers sudo docker rm $(sudo docker ps -a -q) # Delete all images sudo docker rmi $(sudo docker images -q) 

有关docker rm和rmi命令的文档在这里: https : //docs.docker.com/reference/commandline/cli/#rm

额外的命令是标准的bash。