我在系统中安装了一个大小约为1GB的带有操作系统的docker镜像,然后更新并安装了额外的软件,将其大小推到了接近2GB。我使用此容器通过 docker commit <cont-id> <child-name>
创建了一个新的子镜像。现在我有两个docker镜像,包括父镜像和子镜像,总共占用3GB。由于我有冗余的1GB父镜像,我想将其删除。
Parent image 1 GB
Child image 2 GB
我尝试保留子映像并通过docker rmi -f <image-id>
删除父映像,但是出现以下错误:
来自守护程序的错误响应:冲突:无法删除5dvd3054h756 (无法强制)——映像具有依赖的子映像
然后尝试了此解决方案,我运行了sudo docker images --filter "dangling=true" -q --no-trunc
但没有返回任何内容,并且还尝试了docker system prune
,其显示为0 GB。
我还计划向Docker内部安装其他程序,因此希望从现有的子映像中生成新的子映像。我在各处搜索,但没有好的解决方案可以删除Docker中的父映像,原因是读取了一些子映像使用的父层。是否没有办法在创建新的子映像之后删除Docker中的父映像?