我认为 Docker 中的标签就像在堆栈溢出中一样工作,其中数百万个问题可以用相同的标记进行标记。但是,当我在 Docker 中标记第二个映像时,第一个映像会丢失其标记:
那么,图像是否要一对多标记,即一个图像可以在存储库中具有多个标记,但一个标记不能应用于同一存储库中的 2 个或多个图像?
推送一个新的标记会替换旧的标记,但是如果您知道摘要,您可以提取旧的清单,直到注册表垃圾收集它。
标记是指向注册表中清单的指针,它只能指向一个清单,类似于Linux中的符号链接。这是必要的,因为注册表中的其他所有内容都是内容可寻址的,所以您需要标记来避免需要记住很长的摘要。
有两种清单类型、一个图像清单和一个清单列表。清单列表包含对其他清单的引用,这些清单通常用于多平台映像。因此,指向清单列表的标记可以使用清单列表引用多个图像。但运行时只会从该列表中提取一个图像。该列表是由工具推送图像生成的,而不是由注册表通过将先前的图像合并到列表中来动态创建的(这会破坏内容可寻址逻辑,因为它会更改摘要)。
假设我有一个图像 如果我将其推送到存储库,我会发现: 未创建,从另一台机器拉动时,它会抱怨,例如。 将导致一个未找到的错误为 我可以添加最新标记并显式推送到公共存储库: 然后从另一台机器: 将工作,因为最新的存在。 我还发现,一旦存在最新版本,当推送新的编号版本时,它不会自动更新。 我能以某种方式消除手动标记最新的这一步,并让最新的自动指向最新编号的版本吗? 或者是出于某种原因,比如允许将开发版本
问题内容: 假设有一个docker映像,有人对其进行了更改,然后将其推送到docker存储库。然后,我拉下图像。有没有办法获取该图像并运行上一层的容器?在进行更改之前运行版本。 如果我运行docker history,它将看起来像这样: 如果我想出一种方法来标记或标识图像的先前层,则好像可以运行早期版本。 问题答案: 如果可以访问图像,可以通过标记图像的构建层来对其进行标记。如上所述这里。 在您的
我还要做什么吗? 我在shell中使用的命令是: 现在,当我键入时,它显示: 我如何让这个标签出现在GitHub上?我的标签呢?
我正在尝试在我的笔记本电脑上创建一个swarm设置。我正在笔记本电脑上运行swarm守护进程,并作为docker节点运行2个Ubuntu14.04VM。在其中一个节点上,我可以运行swarm,并且可以连接到swarm守护进程。我可以用docker信息列出节点,并在其上生成一个容器。但是当我尝试在另一个VM节点上拉swarm映像时,我得到以下错误: 更新:这是一个不同的东西。我是在家里试的。今天早上
问题内容: 您是否应该在JPA中每个表有一个存储库?如果不是,您如何解决存储库数据库中的泛型? 例如,下面是一个。它处理对对象的 CRUD 操作。如果我想让存储库也保存一个对象,我将如何更改下面的界面以容纳两个对象? 问题答案: 由于存储库是从域驱动设计派生的概念,因此考虑数据库表是错误的方法。根据定义,您可以从存储库访问聚合根。实际上,存储库正在模拟这些集合。 现在是什么形成聚合根?可能更有趣:
我正在尝试为Centos 7和python 2.7创建Dockerfile,我在Docker Hub找到了一个:https://hub.docker.com/r/centos/python-27-centos7但我没有看到任何关于如何使用此图像创建Dockerfile的教程——我只看到pull命令 其实我想添加一些依赖和python包 所以我的问题一般-如果我在DockerHub上找到了一些合适的