6.4. 镜像流标签(Imagestreamtags)
imagestreamtag 是指向 imagestream 中镜像的命名指针,通常缩写为 istag。imagestreamtag 用于引用或检索给定镜像流或标签的镜像。
镜像流标签可引用任何本地管理或外部管理的镜像。它包含镜像历史记录,表示为标签曾指向的所有镜像的堆栈。每当特定镜像流标签下标记了新的或现有镜像时,该镜像将置于历史记录堆栈的第一位置。之前占据第一位置的镜像将移至第二位置,以此类推。这样便于回滚,从而让标签再次指向历史镜像。
以下 imagestreamtag 来自镜像流对象:
历史记录中含有两个镜像的镜像流标签
tags: - items: - created: 2017-09-02T10:15:09Z dockerImageReference: 172.30.56.218:5000/test/origin-ruby-sample@sha256:47463d94eb5c049b2d23b03a9530bf944f8f967a0fe79147dd6b9135bf7dd13d generation: 2 image: sha256:909de62d1f609a717ec433cc25ca5cf00941545c83a01fb31527771e1fab3fc5 - created: 2017-09-29T13:40:11Z dockerImageReference: 172.30.56.218:5000/test/origin-ruby-sample@sha256:909de62d1f609a717ec433cc25ca5cf00941545c83a01fb31527771e1fab3fc5 generation: 1 image: sha256:47463d94eb5c049b2d23b03a9530bf944f8f967a0fe79147dd6b9135bf7dd13d tag: latest
镜像流标签可以是持久性标签,也可以是跟踪标签。
- 持久性标签是特定于版本的标签,指向镜像的特定版本,如 Python 3.5。
跟踪标签是引用标签,跟在另一 imagestreamtag 的后面,以后可进行更新以更改它们跟随的镜像,类似于符号链接。请注意,这些新等级无法保证向后兼容。
例如,OpenShift Container Platform 附带的
latest
imagestreamtag 是跟踪标签。这表示,当有新级别可用时,latest
imagestreamtag 的用户将会更新到镜像提供的最新框架级别。指向v3.10
的latest
imagestreamtag 可随时更改为指向v3.11
。请务必注意,这些latest
镜像流标签的行为与 Dockerlatest
标签不同。在本例中,latest
镜像流标签不指向 Docker 存储库中的最新镜像。它指向另一 imagestreamtag,可能并非镜像的最新版本。例如,如果latest
imagestreamtag 指向v3.10
镜像,则当发布了3.11
版时,latest
标签不会自动更新到v3.11
,仍会保持v3.10
,直到手动更新为指向v3.11
镜像流。注意跟踪标签仅限于单个镜像流,无法引用其他镜像流。
您可根据自己的需求创建自己的 imagestreamtag。
imagestreamtag 由一个镜像流名称和一个标签组成,中间用冒号隔开:
<imagestream name>:<tag>
例如:为引用前面镜像流对象示例中的 sha256:47463d94eb5c049b2d23b03a9530bf944f8f967a0fe79147dd6b9135bf7dd13d
镜像,imagestreamtag 将是:
origin-ruby-sample:latest