第 7 章 ImageStreamMapping [image.openshift.io/v1]
- 描述
- ImageStreamMapping 代表从单个镜像流标签到容器镜像的映射,以及对镜像来自的容器镜像的引用。特权集成商使用此资源来创建镜像资源,并将其与 status 标签字段中的镜像流关联。创建 ImageStreamMapping 将允许任何可以查看镜像流的用户标记或拉取该镜像,因此仅创建验证用户可直接访问镜像内容的映射。此资源支持的唯一操作是 create,元数据名称和命名空间应设置为包含应该更新标签的镜像流。 - 兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。 
- 类型
- 
						object
- 必填
- 
								image
- 
								tag
 
- 
								
7.1. 规格
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
								 | 
								 | APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | 
| 
								 | 
								 | 镜像是容器镜像和元数据在时间点上的不可变表示。镜像通过获取其内容的哈希值(元数据和内容),格式、内容或元数据的任何更改都会生成新名称。images 资源主要供集群管理员使用,并像集群镜像 registry - 最终用户一样集成,而是通过 imagestreamtag 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但实施容器镜像 registry API 的任何集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。 兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。 | 
| 
								 | 
								 | kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | 
| 
								 | metadata 是标准对象的元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
| 
								 | 
								 | tag 是一个字符串值,此镜像可以位于流内。 | 
7.1.1. .image
- 描述
- 镜像是容器镜像和元数据在时间点上的不可变表示。镜像通过获取其内容的哈希值(元数据和内容),格式、内容或元数据的任何更改都会生成新名称。images 资源主要供集群管理员使用,并像集群镜像 registry - 最终用户一样集成,而是通过 imagestreamtag 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但实施容器镜像 registry API 的任何集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。 - 兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。 
- 类型
- 
								object
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
									 | 
									 | APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | 
| 
									 | 
									 | DockerImageConfig 是一个 JSON blob,运行时用于设置容器。这是清单模式 v2 的一部分。当镜像代表清单列表时,不会设置。 | 
| 
									 | 
									 | dockerImageLayers 代表镜像中的层。如果镜像没有定义这些数据,或者镜像代表清单列表,则可能无法设置。 | 
| 
									 | 
									 | ImageLayer 代表镜像的一个层。有些镜像可能有多个层。有些可能没有。 | 
| 
									 | 
									 | DockerImageManifest 是清单的原始 JSON | 
| 
									 | 
									 | DockerImageManifestMediaType 指定清单的 mediaType。这是清单模式 v2 的一部分。 | 
| 
									 | 
									 | 当镜像代表清单列表时,dockerImageManifests 包含有关子清单的信息。当此字段存在时,不应指定 DockerImageLayers。 | 
| 
									 | 
									 | ImageManifest 代表清单列表的子清单。Digest 字段指向常规镜像对象。 | 
| 
									 | dockerImageMetadata 包含有关此镜像的元数据 | |
| 
									 | 
									 | dockerImageMetadataVersion 会传递对象版本,如果为空默认为 "1.0" | 
| 
									 | 
									 | dockerImageReference 是可用于拉取此镜像的字符串。 | 
| 
									 | 
									 | DockerImageSignatures 提供签名作为不透明 Blob。这是清单 schema v1 的一部分。 | 
| 
									 | 
									 | kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | 
| 
									 | metadata 是标准对象的元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
| 
									 | 
									 | 签名包含镜像的所有签名。 | 
| 
									 | 
									 | ImageSignature 包含镜像的签名。只要签名被信任,它就可以验证镜像身份和其他声明。根据此信息,可以将可运行的镜像限制为匹配的集群范围策略。执行镜像验证的客户端应解析必填字段。其他则由服务器从签名的内容解析。它们只是一个信息性目的。 兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。 | 
7.1.2. .image.dockerImageLayers
- 描述
- dockerImageLayers 代表镜像中的层。如果镜像没有定义这些数据,或者镜像代表清单列表,则可能无法设置。
- 类型
- 
								array
7.1.3. .image.dockerImageLayers[]
- 描述
- ImageLayer 代表镜像的一个层。有些镜像可能有多个层。有些可能没有。
- 类型
- 
								object
- 必填
- 
										name
- 
										size
- 
										MediaType
 
- 
										
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
									 | 
									 | 所引用对象的 MediaType。 | 
| 
									 | 
									 | 由底层存储定义的层名称。 | 
| 
									 | 
									 | 底层大小(以字节为单位)由底层存储定义。 | 
7.1.4. .image.dockerImageManifests
- 描述
- 当镜像代表清单列表时,dockerImageManifests 包含有关子清单的信息。当此字段存在时,不应指定 DockerImageLayers。
- 类型
- 
								数组
7.1.5. .image.dockerImageManifests[]
- 描述
- ImageManifest 代表清单列表的子清单。Digest 字段指向常规镜像对象。
- 类型
- 
								object
- 必填
- 
										摘要
- 
										MediaType
- 
										manifestSize
- 
										架构
- 
										os
 
- 
										
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
									 | 
									 | 
									Architecture 指定支持的 CPU 架构,如  | 
| 
									 | 
									 | 摘要是清单的唯一标识符。它指的是 Image 对象。 | 
| 
									 | 
									 | ManifestSize 代表原始对象内容的大小,以字节为单位。 | 
| 
									 | 
									 | MediaType 定义清单的类型,可能的值是 application/vnd.oci.image.manifest.v1+json、application/vnd.docker.distribution.manifest.v2+json 或 application/vnd.docker.distribution.manifest.v1+json。 | 
| 
									 | 
									 | 
									OS 指定操作系统,例如  | 
| 
									 | 
									 | variant 是一个可选字段,它是一个 CPU 变体,如 v6 来指定 ARM CPU 的特定 CPU 变体。 | 
7.1.6. .image.signatures
- 描述
- 签名包含镜像的所有签名。
- 类型
- 
								array
7.1.7. .image.signatures[]
- 描述
- ImageSignature 包含镜像的签名。只要签名被信任,它就可以验证镜像身份和其他声明。根据此信息,可以将可运行的镜像限制为匹配的集群范围策略。执行镜像验证的客户端应解析必填字段。其他则由服务器从签名的内容解析。它们只是一个信息性目的。 - 兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。 
- 类型
- 
								object
- 必填
- 
										type
- 
										content
 
- 
										
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
									 | 
									 | APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | 
| 
									 | 
									 | 条件代表签名当前状态的最新可用影响。 | 
| 
									 | 
									 | SignatureCondition 描述了特定探测时特定 kind 的镜像签名条件。 | 
| 
									 | 
									 | 必需:不透明的二进制字符串,它是镜像的签名。 | 
| 
									 | 如果指定,这是签名创建的时间。 | |
| 
									 | 
									 | 代表镜像身份的人类可读字符串。它可以是产品名称和版本,也可以是镜像拉取 spec (如 "registry.access.redhat.com/rhel7/rhel:7.2")。 | 
| 
									 | 
									 | SignatureIssuer 包含有关签名证书或密钥的签发者的信息。 | 
| 
									 | 
									 | 签名使用者包含有关创建签名的个人或实体的信息。 | 
| 
									 | 
									 | kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | 
| 
									 | metadata 是标准对象的元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
| 
									 | 
									 | 包含来自签名的声明。 | 
| 
									 | 
									 | 必需:描述存储的 blob 类型。 | 
7.1.8. .image.signatures[].conditions
- 描述
- 条件代表签名当前状态的最新可用影响。
- 类型
- 
								array
7.1.9. .image.signatures[].conditions[]
- 描述
- SignatureCondition 描述了特定探测时特定 kind 的镜像签名条件。
- 类型
- 
								object
- 必填
- 
										type
- 
										status
 
- 
										
7.1.10. .image.signatures[].issuedBy
- 描述
- SignatureIssuer 包含有关签名证书或密钥的签发者的信息。
- 类型
- 
								object
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
									 | 
									 | 通用名称(如 openshift-signing-service)。 | 
| 
									 | 
									 | 机构名称。 | 
7.1.11. .image.signatures[].issuedTo
- 描述
- 签名使用者包含有关创建签名的个人或实体的信息。
- 类型
- 
								object
- 必填
- 
										publicKeyID
 
- 
										
| 属性 | 类型 | 描述 | 
|---|---|---|
| 
									 | 
									 | 通用名称(如 openshift-signing-service)。 | 
| 
									 | 
									 | 机构名称。 | 
| 
									 | 
									 | 如果存在,它是属于用于验证镜像签名的主题的公共密钥的人类可读密钥 ID。它应该至少包含 64 位公钥的指纹(例如 0x685ebe62bf278440)。 |