我有一个带有以下dockerfile的图片:
FROM ubuntu:14.04
# others here
然后我跟着:
docker pull user/prj:1.0
有一天,我将我的prj更新为2.0
。
为了节省磁盘,我按如下方式执行:
docker rmi user/prj:1.0
docker pull user/prj:1.1
但我发现新的拉动仍然需要花费很多时间。 快速完成这一过程的最佳方法是什么?
答案 0 :(得分:0)
可能是两个图像共享一些图层。删除旧图像时,删除这些图层,需要再次下载。 所以反过来这样做
docker pull user/prj:1.1
docker rmi user/prj:1.0
通常会更快。
答案 1 :(得分:0)
Docker镜像由图层组成。每个图层都有一个唯一的名称,当您首先移动图像并且该图层不再被其他图像引用时,该图层将被删除。因此,当您尝试获取更新的图像时,即使它具有包含旧图像的重复图层,您也必须进行完整下载。
您可以按以下方式查看图像图层:
sudo docker image inspect user/prj:1.0
当你在docker文件中使用FROM ubuntu:14.04
时,最好的选择是
be downloading the base image of `ubuntu:14.04`:
sudo docker pull ubuntu:14.04