Docker 本地和远程之间的图像大小差异

Docker Image size discrepency between local and remote

我在我的私人存储库中托管了一张图片。我注意到远程存储库中的相同图像比拉取后我在本地机器上的副本小 50%(7GB 对 15GB)。此映像基于 IIS 映像构建。我的问题是 docker 集线器压缩图像吗?

您可以使用 docker save 命令压缩图像。

docker save your_image | gzip > your_image.tar.gz

现在 运行 ls -hl 您将看到图像被压缩并且其大小大约减小到一半或取决于图层。

使用 gzip 将图像保存到 tar.gz 文件:

You can use gzip to save the image file and make the backup smaller.

docker save myimage:latest | gzip > myimage_latest.tar.gz

save docker image

您可以加​​载图像或与其他人共享文件,因此所有需要将其作为 docker 图像加载回来。

docker load < your_image.tar.gz

Load an image or repository from a tar archive (even if compressed with gzip, bzip2, or xz) from a file or STDIN. It restores both images and tags.

一个centos的例子,大约200MB,gzip文件只有70MB

所以您可以同样压缩您的本地图像,并且您可以获得高达 7GB 的 gzip 文件。

这是一个老话题。您可以查看有关此主题的一些讨论:

似乎在 docker push 期间图像被压缩了。虽然集线器显示压缩后的大小(尽管不太清楚)代表网络上的内容,docker-images 显示未压缩的大小。