Docker子图像是什么以及为什么我不删除它们?
我一直在使用Kali Linux映像并且我提交我的更改并将其命名为Kaliupdate1,进行更多更改并将其命名为Kaliupdate2然后我尝试删除Kaliupdate1但它不起作用...
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
kaliupdate2 latest e57f94c32fac 18 hours ago 2.25 GB
kaliupdate1 latest 16da215f736c 18 hours ago 1.12 GB
kaliupdate latest a841aa8bb8a9 19 hours ago 1.07 GB
答案 0 :(得分:2)
因此,从您的问题来看,假设您的工作流程是启动容器,在容器内交互工作然后将更改提交到新图像,答案是您实际上在创建新图层现有kali基础图像的顶部。
因此需要完整的堆叠层来操作。这并不意味着所占用的磁盘空间为2.25 + 1.12 + 1.07,但Docker共享较低层。
那说这不是创建Docker镜像的好方法,因为像chown
和mv
这样的操作可能会在图像中留下冗余文件。
更好的方法是根据原始kali图像(在Dockerfile中使用FROM kali:latest
)创建一个新的Dockerfile,然后在Dockerfile中进行所需的更改并执行构建,为您提供最终图像
有关Docker网站here
的更多信息