我已经在计算机上创建了ubuntu:bionic基础图像。最初是超大尺寸,但我通过运行容器然后提交来删除了80%的内容。如果我进入根目录并执行“ du -sh”,则表示磁盘使用量为4.5GB。奇怪的是,当我执行“ docker images”时,docker image的大小显示为11 GB。推到docker hub后,我看到它是3.34 GB。所以我想也许它在压缩之前就清理了一些内容?我运行了新映像,删除了一些更多的内容,提交并再次推送。这次,“ du–sh”表示3.0 GB,“ docker映像”仍然表示11GB,而docker hub也为3.34 GB。显然,它正在压缩11GB文件,而不是我压缩的3.0GB内容。期待。是否有一种简单的方法可以“清理”图像?
Docker映像是从层构建的。当您添加一个新层时,它不会删除先前的层,而只是添加一个新层,就像一个新的Git提交一样-历史仍然存在。
这意味着当您删除内容时,它使它不可见,但仍在较早的层中。
您可以通过docker history yourimagename
查看图层及其大小。
您的选择:
.dockerignore
。