每次进行更改时,Docker Hub是否需要上传整个图像?

时间:2015-10-11 12:33:15

标签: docker

我正在尝试Docker,我做了以下事情:

  1. 拉出一张名为Files
  2. 的图片
  3. 通过一些细微的改动建立了另一个图像。
  4. 以不同的名称将其推回到我的公共存储库(必须上传与我下载的大小相同的大小)。
  5. 然后我用这个公共图像作为起点建立了另一个图像。
  6. 只有一个命令。但我又要把整个图像上传回去了。
  7. 我的问题是,Docker不应该只上传更改吗?我在某处读到了它。好像我犯了一些愚蠢的错误,我无法相信我们必须在每次微小的变化后上传整个图像。我错过了什么吗?

    这是我用于构建图片docker/whalesay的{​​{1}}:

    Dockerfile

    鲸鱼图像大约为180 MB;所以,当我推不应该,我只需要上传更改的图层?

2 个答案:

答案 0 :(得分:1)

当您调用docker push时,需要在存储库中更新图像中图层的任何更改。这可能是一个小而微不足道的事情,例如在图像中包含一个新包(例如:vi)。但是,这将导致创建新图层并替换现有图层,从而导致与注册表中已有的图层ID不同。 docker push上传创建到注册表中的所有新图层,不包括基本图像。

答案 1 :(得分:0)

我也面临同样的问题,我来的是

https://github.com/docker/docker/issues/18866#issuecomment-192770785 https://github.com/docker/docker/issues/14018

  

如上所述,此功能在Docker中实现   引擎1.10 /注册表2.3。

在发送给docker支持的电子邮件后,我收到了以下回复

  

您好,

     

不幸的是,我们没有时间表来更新   我们可以公开分享Docker Hub。对不起   由此造成的麻烦。

     

/杰夫