×
描述

镜像流导入资源为用户提供了一种简单的方法,可以从其他容器镜像注册表中查找并将容器镜像导入服务器。可以导入单个镜像或整个镜像仓库,用户可以选择在将生成的镜像标记到指定的镜像流之前查看导入的结果。

此 API 旨在用于需要在导入之前查看镜像元数据(例如,从中生成应用程序)的最终用户工具。知道所需镜像的客户端可以继续直接在其镜像流中创建 spec.tags。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • spec

  • status

规范

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

ImageStreamImportSpec 定义应导入哪些镜像。

status

对象

ImageStreamImportStatus 包含有关镜像流导入状态的信息。

.spec

描述

ImageStreamImportSpec 定义应导入哪些镜像。

类型

对象

必需
  • import

属性 类型 描述

images

数组

Images 是要导入的单个镜像列表。

images[]

对象

ImageImportSpec 描述了导入特定镜像的请求。

import

布尔值

Import 指示是否执行导入 - 如果是,则指定的标签将设置在由类型元数据定义的镜像流的规范和状态上。

repository

对象

RepositoryImportSpec 描述了从容器镜像仓库导入镜像的请求。

.spec.images

描述

Images 是要导入的单个镜像列表。

类型

数组

.spec.images[]

描述

ImageImportSpec 描述了导入特定镜像的请求。

类型

对象

必需
  • from

属性 类型 描述

from

ObjectReference

From 是要导入的镜像的来源;只允许 kind DockerImage

importPolicy

对象

TagImportPolicy 控制如何导入与此标签相关的镜像。

includeManifest

布尔值

IncludeManifest 确定是否在响应中返回每个镜像的清单。

referencePolicy

对象

TagReferencePolicy 描述当部署配置或构建中的镜像更改触发器被解析时,如何生成此镜像流标签中镜像的拉取规范。这允许镜像流作者控制如何访问镜像。

to

LocalObjectReference_v2

To 是当前镜像流中要将导入的镜像分配到的标签,如果未指定名称,则将使用 from.name 中的默认标签

.spec.images[].importPolicy

描述

TagImportPolicy 控制如何导入与此标签相关的镜像。

类型

对象

属性 类型 描述

importMode

字符串

ImportMode 描述如何导入镜像清单。

insecure

布尔值

如果服务器可能在镜像导入期间绕过证书验证或直接通过 HTTP 连接,则 Insecure 为 true。

scheduled

布尔值

Scheduled 向服务器指示应定期检查此标签以确保其是最新的并已导入。

.spec.images[].referencePolicy

描述

TagReferencePolicy 描述当部署配置或构建中的镜像更改触发器被解析时,如何生成此镜像流标签中镜像的拉取规范。这允许镜像流作者控制如何访问镜像。

类型

对象

必需
  • type

属性 类型 描述

type

字符串

Type 确定当在部署配置触发器或新构建中使用镜像流标签时,应如何转换镜像拉取规范。默认值为Source,表示应使用镜像的原始位置(如果已导入)。用户还可以指定Local,表示拉取规范应指向集成的容器镜像注册表,并利用注册表将拉取代理到上游注册表的功能。Local允许从镜像流的命名空间管理用于拉取此镜像的凭据,因此平台上的其他用户可以访问远程镜像,但无法访问远程密钥。它还允许将镜像层镜像到本地注册表中,即使上游注册表不可用,也可以拉取镜像。

.spec.repository

描述

RepositoryImportSpec 描述了从容器镜像仓库导入镜像的请求。

类型

对象

必需
  • from

属性 类型 描述

from

ObjectReference

From 是要导入的镜像仓库的来源;只允许 kind DockerImage 和容器镜像仓库的名称。

importPolicy

对象

TagImportPolicy 控制如何导入与此标签相关的镜像。

includeManifest

布尔值

IncludeManifest 确定是否在响应中返回每个镜像的清单。

referencePolicy

对象

TagReferencePolicy 描述当部署配置或构建中的镜像更改触发器被解析时,如何生成此镜像流标签中镜像的拉取规范。这允许镜像流作者控制如何访问镜像。

.spec.repository.importPolicy

描述

TagImportPolicy 控制如何导入与此标签相关的镜像。

类型

对象

属性 类型 描述

importMode

字符串

ImportMode 描述如何导入镜像清单。

insecure

布尔值

如果服务器可能在镜像导入期间绕过证书验证或直接通过 HTTP 连接,则 Insecure 为 true。

scheduled

布尔值

Scheduled 向服务器指示应定期检查此标签以确保其是最新的并已导入。

.spec.repository.referencePolicy

描述

TagReferencePolicy 描述当部署配置或构建中的镜像更改触发器被解析时,如何生成此镜像流标签中镜像的拉取规范。这允许镜像流作者控制如何访问镜像。

类型

对象

必需
  • type

属性 类型 描述

type

字符串

Type 确定当在部署配置触发器或新构建中使用镜像流标签时,应如何转换镜像拉取规范。默认值为Source,表示应使用镜像的原始位置(如果已导入)。用户还可以指定Local,表示拉取规范应指向集成的容器镜像注册表,并利用注册表将拉取代理到上游注册表的功能。Local允许从镜像流的命名空间管理用于拉取此镜像的凭据,因此平台上的其他用户可以访问远程镜像,但无法访问远程密钥。它还允许将镜像层镜像到本地注册表中,即使上游注册表不可用,也可以拉取镜像。

.status

描述

ImageStreamImportStatus 包含有关镜像流导入状态的信息。

类型

对象

属性 类型 描述

images

数组

Images 使用导入 spec.images 的结果设置。

images[]

对象

ImageImportStatus 描述了镜像导入的结果。

import

对象

ImageStream 存储标签与镜像的映射、在流中标记镜像时应用的元数据覆盖以及对注册表上容器镜像仓库的可选引用。用户通常更新 spec.tags 字段以指向外部镜像(使用命名空间中的凭据通过 pull secret 类型从容器注册表导入),或指向可以直接用于标记或拉取的现有镜像流标签和镜像。应用于标签的镜像历史记录在 status.tags 字段中可见,任何可以查看镜像流的用户都可以将该镜像标记到他们自己的镜像流中。通过对给定镜像流具有“get imagestreams/layers”权限来授予从集成注册表拉取镜像的访问权限。用户可以通过删除 imagestreamtag 资源来删除标签,这会导致该标签的规范和状态都被删除。镜像流历史记录将保留,直到管理员运行 prune 操作,该操作将删除不再使用的引用。要保留历史镜像,请确保 spec 中有一个标签指向该镜像及其摘要。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

repository

对象

RepositoryImportStatus 描述了镜像仓库导入的结果。

.status.images

描述

Images 使用导入 spec.images 的结果设置。

类型

数组

.status.images[]

描述

ImageImportStatus 描述了镜像导入的结果。

类型

对象

必需
  • status

属性 类型 描述

image

对象

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

manifests

数组

Manifests 在导入清单列表时保存子清单元数据。

manifests[]

对象

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

status

Status_v5

Status 是镜像导入的状态,包括在检索镜像时遇到的错误。

标签

字符串

Tag 是此镜像所在的标签,如果存在的话。

.status.images[].image

描述

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

dockerImageConfig

字符串

DockerImageConfig 是运行时用于设置容器的 JSON 对象。这是清单模式 v2 的一部分。当镜像表示清单列表时,不会设置此字段。

dockerImageLayers

数组

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

dockerImageLayers[]

对象

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

dockerImageManifest

字符串

DockerImageManifest 是清单的原始 JSON 数据。

dockerImageManifestMediaType

字符串

DockerImageManifestMediaType 指定清单的 mediaType。这是清单模式 v2 的一部分。

dockerImageManifests

数组

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

dockerImageManifests[]

对象

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

dockerImageMetadata

RawExtension

DockerImageMetadata 包含有关此镜像的元数据。

dockerImageMetadataVersion

字符串

DockerImageMetadataVersion 传达对象的版本,如果为空,则默认为“1.0”。

dockerImageReference

字符串

DockerImageReference 是可用于拉取此镜像的字符串。

dockerImageSignatures

数组 (字符串)

DockerImageSignatures 以不透明 blob 的形式提供签名。这是清单模式 v1 的一部分。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

signatures

数组

Signatures 包含镜像的所有签名。

signatures[]

对象

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

.status.images[].image.dockerImageLayers

描述

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

类型

数组

.status.images[].image.dockerImageLayers[]

描述

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

类型

对象

必需
  • 名称

  • 大小

  • mediaType

属性 类型 描述

mediaType

字符串

引用的对象的 MediaType。

名称

字符串

底层存储中定义的层的名称。

大小

整数

底层存储中定义的层的以字节为单位的大小。

.status.images[].image.dockerImageManifests

描述

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

类型

数组

.status.images[].image.dockerImageManifests[]

描述

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

类型

对象

必需
  • 摘要

  • mediaType

  • 清单大小

  • 架构

  • 操作系统

属性 类型 描述

架构

字符串

架构指定支持的 CPU 架构,例如 amd64ppc64le

摘要

字符串

摘要是清单的唯一标识符。它引用一个 Image 对象。

清单大小

整数

ManifestSize 表示原始对象内容的大小(以字节为单位)。

mediaType

字符串

MediaType 定义清单的类型,可能的值为 application/vnd.oci.image.manifest.v1+json、application/vnd.docker.distribution.manifest.v2+json 或 application/vnd.docker.distribution.manifest.v1+json。

操作系统

字符串

OS 指定操作系统,例如 linux

变体

字符串

Variant 是一个可选字段,表示 CPU 的变体,例如 v6 指定 ARM CPU 的特定 CPU 变体。

.status.images[].image.signatures

描述

Signatures 包含镜像的所有签名。

类型

数组

.status.images[].image.signatures[]

描述

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • type

  • 内容

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

条件

数组

Conditions 表示对签名的当前状态的最新可用观察结果。

conditions[]

对象

SignatureCondition 描述特定时间特定类型的镜像签名条件。

内容

字符串

必填:不透明的二进制字符串,它是镜像的签名。

创建时间

时间

如果指定,则为签名的创建时间。

镜像标识

字符串

表示镜像标识的可读字符串。它可以是产品名称和版本,或镜像拉取规范(例如,“registry.access.redhat.com/rhel7/rhel:7.2”)。

签发者

对象

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

签发对象

对象

SignatureSubject 包含有关创建签名的个人或实体的信息。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

已签名声明

对象 (字符串)

包含来自签名的声明。

type

字符串

必填:描述存储的 blob 类型。

.status.images[].image.signatures[].conditions

描述

Conditions 表示对签名的当前状态的最新可用观察结果。

类型

数组

.status.images[].image.signatures[].conditions[]

描述

SignatureCondition 描述特定时间特定类型的镜像签名条件。

类型

对象

必需
  • type

  • status

属性 类型 描述

上次探测时间

时间

最后一次检查条件的时间。

上次状态转换时间

时间

条件从一种状态转换到另一种状态的最后一次时间。

消息

字符串

指示上次转换详细信息的可读消息。

原因

字符串

条件最后一次转换的(简要)原因。

status

字符串

条件的状态,True、False、Unknown 之一。

type

字符串

签名条件的类型,Complete 或 Failed。

.status.images[].image.signatures[].issuedBy

描述

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

类型

对象

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

.status.images[].image.signatures[].issuedTo

描述

SignatureSubject 包含有关创建签名的个人或实体的信息。

类型

对象

必需
  • 公钥 ID

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

公钥 ID

字符串

如果存在,则为用于验证镜像签名的属于主题的公钥的可读密钥 ID。它应至少包含公钥指纹的最低 64 位(例如 0x685ebe62bf278440)。

.status.images[].manifests

描述

Manifests 在导入清单列表时保存子清单元数据。

类型

数组

.status.images[].manifests[]

描述

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

dockerImageConfig

字符串

DockerImageConfig 是运行时用于设置容器的 JSON 对象。这是清单模式 v2 的一部分。当镜像表示清单列表时,不会设置此字段。

dockerImageLayers

数组

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

dockerImageLayers[]

对象

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

dockerImageManifest

字符串

DockerImageManifest 是清单的原始 JSON 数据。

dockerImageManifestMediaType

字符串

DockerImageManifestMediaType 指定清单的 mediaType。这是清单模式 v2 的一部分。

dockerImageManifests

数组

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

dockerImageManifests[]

对象

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

dockerImageMetadata

RawExtension

DockerImageMetadata 包含有关此镜像的元数据。

dockerImageMetadataVersion

字符串

DockerImageMetadataVersion 传达对象的版本,如果为空,则默认为“1.0”。

dockerImageReference

字符串

DockerImageReference 是可用于拉取此镜像的字符串。

dockerImageSignatures

数组 (字符串)

DockerImageSignatures 以不透明 blob 的形式提供签名。这是清单模式 v1 的一部分。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

signatures

数组

Signatures 包含镜像的所有签名。

signatures[]

对象

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

.status.images[].manifests[].dockerImageLayers

描述

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

类型

数组

.status.images[].manifests[].dockerImageLayers[]

描述

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

类型

对象

必需
  • 名称

  • 大小

  • mediaType

属性 类型 描述

mediaType

字符串

引用的对象的 MediaType。

名称

字符串

底层存储中定义的层的名称。

大小

整数

底层存储中定义的层的以字节为单位的大小。

.status.images[].manifests[].dockerImageManifests

描述

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

类型

数组

.status.images[].manifests[].dockerImageManifests[]

描述

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

类型

对象

必需
  • 摘要

  • mediaType

  • 清单大小

  • 架构

  • 操作系统

属性 类型 描述

架构

字符串

架构指定支持的 CPU 架构,例如 amd64ppc64le

摘要

字符串

摘要是清单的唯一标识符。它引用一个 Image 对象。

清单大小

整数

ManifestSize 表示原始对象内容的大小(以字节为单位)。

mediaType

字符串

MediaType 定义清单的类型,可能的值为 application/vnd.oci.image.manifest.v1+json、application/vnd.docker.distribution.manifest.v2+json 或 application/vnd.docker.distribution.manifest.v1+json。

操作系统

字符串

OS 指定操作系统,例如 linux

变体

字符串

Variant 是一个可选字段,表示 CPU 的变体,例如 v6 指定 ARM CPU 的特定 CPU 变体。

.status.images[].manifests[].signatures

描述

Signatures 包含镜像的所有签名。

类型

数组

.status.images[].manifests[].signatures[]

描述

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • type

  • 内容

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

条件

数组

Conditions 表示对签名的当前状态的最新可用观察结果。

conditions[]

对象

SignatureCondition 描述特定时间特定类型的镜像签名条件。

内容

字符串

必填:不透明的二进制字符串,它是镜像的签名。

创建时间

时间

如果指定,则为签名的创建时间。

镜像标识

字符串

表示镜像标识的可读字符串。它可以是产品名称和版本,或镜像拉取规范(例如,“registry.access.redhat.com/rhel7/rhel:7.2”)。

签发者

对象

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

签发对象

对象

SignatureSubject 包含有关创建签名的个人或实体的信息。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

已签名声明

对象 (字符串)

包含来自签名的声明。

type

字符串

必填:描述存储的 blob 类型。

.status.images[].manifests[].signatures[].conditions

描述

Conditions 表示对签名的当前状态的最新可用观察结果。

类型

数组

.status.images[].manifests[].signatures[].conditions[]

描述

SignatureCondition 描述特定时间特定类型的镜像签名条件。

类型

对象

必需
  • type

  • status

属性 类型 描述

上次探测时间

时间

最后一次检查条件的时间。

上次状态转换时间

时间

条件从一种状态转换到另一种状态的最后一次时间。

消息

字符串

指示上次转换详细信息的可读消息。

原因

字符串

条件最后一次转换的(简要)原因。

status

字符串

条件的状态,True、False、Unknown 之一。

type

字符串

签名条件的类型,Complete 或 Failed。

.status.images[].manifests[].signatures[].issuedBy

描述

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

类型

对象

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

.status.images[].manifests[].signatures[].issuedTo

描述

SignatureSubject 包含有关创建签名的个人或实体的信息。

类型

对象

必需
  • 公钥 ID

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

公钥 ID

字符串

如果存在,则为用于验证镜像签名的属于主题的公钥的可读密钥 ID。它应至少包含公钥指纹的最低 64 位(例如 0x685ebe62bf278440)。

.status.import

描述

ImageStream 存储标签与镜像的映射、在流中标记镜像时应用的元数据覆盖以及对注册表上容器镜像仓库的可选引用。用户通常更新 spec.tags 字段以指向外部镜像(使用命名空间中的凭据通过 pull secret 类型从容器注册表导入),或指向可以直接用于标记或拉取的现有镜像流标签和镜像。应用于标签的镜像历史记录在 status.tags 字段中可见,任何可以查看镜像流的用户都可以将该镜像标记到他们自己的镜像流中。通过对给定镜像流具有“get imagestreams/layers”权限来授予从集成注册表拉取镜像的访问权限。用户可以通过删除 imagestreamtag 资源来删除标签,这会导致该标签的规范和状态都被删除。镜像流历史记录将保留,直到管理员运行 prune 操作,该操作将删除不再使用的引用。要保留历史镜像,请确保 spec 中有一个标签指向该镜像及其摘要。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

ImageStreamSpec 代表 ImageStream 的选项。

status

对象

ImageStreamStatus 包含有关此镜像流状态的信息。

.status.import.spec

描述

ImageStreamSpec 代表 ImageStream 的选项。

类型

对象

属性 类型 描述

dockerImageRepository

字符串

dockerImageRepository 为可选字段,如果指定,则此流将由服务器上的容器存储库支持 已弃用:此字段自 v3.7 版本起已弃用,将在未来版本中移除。请改用 spec.tags.from 引用在每个标签中指定要导入的标签的来源。

lookupPolicy

对象

ImageLookupPolicy 描述了如何使用镜像流来覆盖命名空间中 Pod、构建和其他资源使用的镜像引用。

tags

数组

tags 将任意字符串值映射到特定的镜像定位符。

tags[]

对象

TagReference 指定使用此标签的镜像的可选注释,以及此标签应跟踪的 ImageStreamTag、ImageStreamImage 或 DockerImage 的可选引用。

.status.import.spec.lookupPolicy

描述

ImageLookupPolicy 描述了如何使用镜像流来覆盖命名空间中 Pod、构建和其他资源使用的镜像引用。

类型

对象

必需
  • local

属性 类型 描述

local

布尔值

local 将更改此命名空间中对象的 Docker 短镜像引用(如“mysql”或“php:latest”)为镜像 ID(只要它们与该镜像流匹配),而不是访问远程注册表。如果找到,名称将被完全限定为镜像 ID。替换值将考虑标签的 referencePolicy。仅在当前命名空间内有效。

.status.import.spec.tags

描述

tags 将任意字符串值映射到特定的镜像定位符。

类型

数组

.status.import.spec.tags[]

描述

TagReference 指定使用此标签的镜像的可选注释,以及此标签应跟踪的 ImageStreamTag、ImageStreamImage 或 DockerImage 的可选引用。

类型

对象

必需
  • 名称

属性 类型 描述

annotations

对象 (字符串)

可选;如果指定,则将应用于通过 ImageStreamTags 检索的镜像的注释。

from

ObjectReference

可选;如果指定,则引用此标签应指向的另一个镜像。有效值为 ImageStreamTag、ImageStreamImage 和 DockerImage。ImageStreamTag 引用只能引用此相同 ImageStream 中的标签。

generation

整数

generation 是一个计数器,用于跟踪对 spec 标签(用户意图)的更改。当标签引用更改时,generation 将设置为与当前流 generation(每次更改 spec 时都会递增)匹配。系统中的其他进程(如镜像导入程序)会观察到 spec 标签的 generation 比 status 中记录的 generation 新,并将其用作导入最新远程标签的触发器。为了触发新的导入,客户端可以将此值设置为零,这将把 generation 重置为最新的流 generation。旧版客户端将此值发送为 nil,这将与当前标签 generation 合并。

importPolicy

对象

TagImportPolicy 控制如何导入与此标签相关的镜像。

名称

字符串

标签名称

reference

布尔值

Reference 指明是否导入标签。默认值为 false,表示将导入标签。

referencePolicy

对象

TagReferencePolicy 描述当部署配置或构建中的镜像更改触发器被解析时,如何生成此镜像流标签中镜像的拉取规范。这允许镜像流作者控制如何访问镜像。

.status.import.spec.tags[].importPolicy

描述

TagImportPolicy 控制如何导入与此标签相关的镜像。

类型

对象

属性 类型 描述

importMode

字符串

ImportMode 描述如何导入镜像清单。

insecure

布尔值

如果服务器可能在镜像导入期间绕过证书验证或直接通过 HTTP 连接,则 Insecure 为 true。

scheduled

布尔值

Scheduled 向服务器指示应定期检查此标签以确保其是最新的并已导入。

.status.import.spec.tags[].referencePolicy

描述

TagReferencePolicy 描述当部署配置或构建中的镜像更改触发器被解析时,如何生成此镜像流标签中镜像的拉取规范。这允许镜像流作者控制如何访问镜像。

类型

对象

必需
  • type

属性 类型 描述

type

字符串

Type 确定当在部署配置触发器或新构建中使用镜像流标签时,应如何转换镜像拉取规范。默认值为Source,表示应使用镜像的原始位置(如果已导入)。用户还可以指定Local,表示拉取规范应指向集成的容器镜像注册表,并利用注册表将拉取代理到上游注册表的功能。Local允许从镜像流的命名空间管理用于拉取此镜像的凭据,因此平台上的其他用户可以访问远程镜像,但无法访问远程密钥。它还允许将镜像层镜像到本地注册表中,即使上游注册表不可用,也可以拉取镜像。

.status.import.status

描述

ImageStreamStatus 包含有关此镜像流状态的信息。

类型

对象

必需
  • dockerImageRepository

属性 类型 描述

dockerImageRepository

字符串

DockerImageRepository 表示此流可能在其被访问到的有效位置。在服务器确定存储库位置之前,它可能是空的。

publicDockerImageRepository

字符串

PublicDockerImageRepository 表示可以从集群外部拉取镜像的公共位置。如果管理员未在外部公开集成注册表,则此字段可能为空。

tags

数组

标签是与每个标签关联的镜像的历史记录。TagEvent 数组中的第一个条目是当前已标记的镜像。

tags[]

对象

NamedTagEventList 将标签与其镜像历史记录关联起来。

.status.import.status.tags

描述

标签是与每个标签关联的镜像的历史记录。TagEvent 数组中的第一个条目是当前已标记的镜像。

类型

数组

.status.import.status.tags[]

描述

NamedTagEventList 将标签与其镜像历史记录关联起来。

类型

对象

必需
  • 标签

  • items

属性 类型 描述

条件

数组

Conditions 是应用于标签事件列表的一组条件。

conditions[]

对象

TagEventCondition 包含标签事件的条件信息。

items

数组

标准对象的元数据。

items[]

对象

TagEvent 用于 ImageStreamStatus 以保存与标签关联的镜像的历史记录。

标签

字符串

Tag 是记录历史记录的标签。

.status.import.status.tags[].conditions

描述

Conditions 是应用于标签事件列表的一组条件。

类型

数组

.status.import.status.tags[].conditions[]

描述

TagEventCondition 包含标签事件的条件信息。

类型

对象

必需
  • type

  • status

  • generation

属性 类型 描述

generation

整数

Generation 是此状态对应的 spec 标签 generation。

上次状态转换时间

时间

LastTransitionTIme 是条件从一种状态转换为另一种状态的时间。

消息

字符串

Message 是关于上次转换的详细信息的人类可读描述,补充了 reason。

原因

字符串

Reason 是对条件上次转换的简短机器可读解释。

status

字符串

条件的状态,True、False、Unknown 之一。

type

字符串

标签事件条件的类型,目前仅为 ImportSuccess。

.status.import.status.tags[].items

描述

标准对象的元数据。

类型

数组

.status.import.status.tags[].items[]

描述

TagEvent 用于 ImageStreamStatus 以保存与标签关联的镜像的历史记录。

类型

对象

必需
  • 创建时间

  • dockerImageReference

  • image

  • generation

属性 类型 描述

创建时间

时间

Created 保持创建 TagEvent 的时间。

dockerImageReference

字符串

DockerImageReference 是可用于拉取此镜像的字符串。

generation

整数

Generation 是导致此标签更新的 spec 标签 generation。

image

字符串

Image 是镜像。

.status.repository

描述

RepositoryImportStatus 描述了镜像仓库导入的结果。

类型

对象

属性 类型 描述

additionalTags

数组 (字符串)

AdditionalTags 是存储库中存在的标签,但由于应用了自动导入的最大限制而未导入。

images

数组

Images 是存储库导入成功检索到的镜像列表。

images[]

对象

ImageImportStatus 描述了镜像导入的结果。

status

Status_v5

Status 反映导入过程中是否发生任何故障。

.status.repository.images

描述

Images 是存储库导入成功检索到的镜像列表。

类型

数组

.status.repository.images[]

描述

ImageImportStatus 描述了镜像导入的结果。

类型

对象

必需
  • status

属性 类型 描述

image

对象

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

manifests

数组

Manifests 在导入清单列表时保存子清单元数据。

manifests[]

对象

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

status

Status_v5

Status 是镜像导入的状态,包括在检索镜像时遇到的错误。

标签

字符串

Tag 是此镜像所在的标签,如果存在的话。

.status.repository.images[].image

描述

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

dockerImageConfig

字符串

DockerImageConfig 是运行时用于设置容器的 JSON 对象。这是清单模式 v2 的一部分。当镜像表示清单列表时,不会设置此字段。

dockerImageLayers

数组

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

dockerImageLayers[]

对象

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

dockerImageManifest

字符串

DockerImageManifest 是清单的原始 JSON 数据。

dockerImageManifestMediaType

字符串

DockerImageManifestMediaType 指定清单的 mediaType。这是清单模式 v2 的一部分。

dockerImageManifests

数组

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

dockerImageManifests[]

对象

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

dockerImageMetadata

RawExtension

DockerImageMetadata 包含有关此镜像的元数据。

dockerImageMetadataVersion

字符串

DockerImageMetadataVersion 传达对象的版本,如果为空,则默认为“1.0”。

dockerImageReference

字符串

DockerImageReference 是可用于拉取此镜像的字符串。

dockerImageSignatures

数组 (字符串)

DockerImageSignatures 以不透明 blob 的形式提供签名。这是清单模式 v1 的一部分。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

signatures

数组

Signatures 包含镜像的所有签名。

signatures[]

对象

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

.status.repository.images[].image.dockerImageLayers

描述

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

类型

数组

.status.repository.images[].image.dockerImageLayers[]

描述

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

类型

对象

必需
  • 名称

  • 大小

  • mediaType

属性 类型 描述

mediaType

字符串

引用的对象的 MediaType。

名称

字符串

底层存储中定义的层的名称。

大小

整数

底层存储中定义的层的以字节为单位的大小。

.status.repository.images[].image.dockerImageManifests

描述

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

类型

数组

.status.repository.images[].image.dockerImageManifests[]

描述

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

类型

对象

必需
  • 摘要

  • mediaType

  • 清单大小

  • 架构

  • 操作系统

属性 类型 描述

架构

字符串

架构指定支持的 CPU 架构,例如 amd64ppc64le

摘要

字符串

摘要是清单的唯一标识符。它引用一个 Image 对象。

清单大小

整数

ManifestSize 表示原始对象内容的大小(以字节为单位)。

mediaType

字符串

MediaType 定义清单的类型,可能的值为 application/vnd.oci.image.manifest.v1+json、application/vnd.docker.distribution.manifest.v2+json 或 application/vnd.docker.distribution.manifest.v1+json。

操作系统

字符串

OS 指定操作系统,例如 linux

变体

字符串

Variant 是一个可选字段,表示 CPU 的变体,例如 v6 指定 ARM CPU 的特定 CPU 变体。

.status.repository.images[].image.signatures

描述

Signatures 包含镜像的所有签名。

类型

数组

.status.repository.images[].image.signatures[]

描述

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • type

  • 内容

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

条件

数组

Conditions 表示对签名的当前状态的最新可用观察结果。

conditions[]

对象

SignatureCondition 描述特定时间特定类型的镜像签名条件。

内容

字符串

必填:不透明的二进制字符串,它是镜像的签名。

创建时间

时间

如果指定,则为签名的创建时间。

镜像标识

字符串

表示镜像标识的可读字符串。它可以是产品名称和版本,或镜像拉取规范(例如,“registry.access.redhat.com/rhel7/rhel:7.2”)。

签发者

对象

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

签发对象

对象

SignatureSubject 包含有关创建签名的个人或实体的信息。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

已签名声明

对象 (字符串)

包含来自签名的声明。

type

字符串

必填:描述存储的 blob 类型。

.status.repository.images[].image.signatures[].conditions

描述

Conditions 表示对签名的当前状态的最新可用观察结果。

类型

数组

.status.repository.images[].image.signatures[].conditions[]

描述

SignatureCondition 描述特定时间特定类型的镜像签名条件。

类型

对象

必需
  • type

  • status

属性 类型 描述

上次探测时间

时间

最后一次检查条件的时间。

上次状态转换时间

时间

条件从一种状态转换到另一种状态的最后一次时间。

消息

字符串

指示上次转换详细信息的可读消息。

原因

字符串

条件最后一次转换的(简要)原因。

status

字符串

条件的状态,True、False、Unknown 之一。

type

字符串

签名条件的类型,Complete 或 Failed。

.status.repository.images[].image.signatures[].issuedBy

描述

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

类型

对象

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

.status.repository.images[].image.signatures[].issuedTo

描述

SignatureSubject 包含有关创建签名的个人或实体的信息。

类型

对象

必需
  • 公钥 ID

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

公钥 ID

字符串

如果存在,则为用于验证镜像签名的属于主题的公钥的可读密钥 ID。它应至少包含公钥指纹的最低 64 位(例如 0x685ebe62bf278440)。

.status.repository.images[].manifests

描述

Manifests 在导入清单列表时保存子清单元数据。

类型

数组

.status.repository.images[].manifests[]

描述

Image 是在特定时间点对容器镜像和元数据的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希来完成的,任何格式、内容或元数据的更改都会导致新的名称。images 资源主要供集群管理员和集群镜像注册表等集成使用 - 最终用户可以通过 imagestreamtags 或 imagestreamimages 资源访问镜像。虽然镜像元数据存储在 API 中,但任何实现容器镜像注册表 API 的集成都必须为原始清单数据、镜像配置和层内容提供自己的存储。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

dockerImageConfig

字符串

DockerImageConfig 是运行时用于设置容器的 JSON 对象。这是清单模式 v2 的一部分。当镜像表示清单列表时,不会设置此字段。

dockerImageLayers

数组

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

dockerImageLayers[]

对象

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

dockerImageManifest

字符串

DockerImageManifest 是清单的原始 JSON 数据。

dockerImageManifestMediaType

字符串

DockerImageManifestMediaType 指定清单的 mediaType。这是清单模式 v2 的一部分。

dockerImageManifests

数组

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

dockerImageManifests[]

对象

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

dockerImageMetadata

RawExtension

DockerImageMetadata 包含有关此镜像的元数据。

dockerImageMetadataVersion

字符串

DockerImageMetadataVersion 传达对象的版本,如果为空,则默认为“1.0”。

dockerImageReference

字符串

DockerImageReference 是可用于拉取此镜像的字符串。

dockerImageSignatures

数组 (字符串)

DockerImageSignatures 以不透明 blob 的形式提供签名。这是清单模式 v1 的一部分。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

signatures

数组

Signatures 包含镜像的所有签名。

signatures[]

对象

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

.status.repository.images[].manifests[].dockerImageLayers

描述

DockerImageLayers 表示镜像中的各层。如果镜像未定义该数据或镜像表示清单列表,则可能未设置此字段。

类型

数组

.status.repository.images[].manifests[].dockerImageLayers[]

描述

ImageLayer 表示镜像的单个层。一些镜像可能有多个层,有些可能没有。

类型

对象

必需
  • 名称

  • 大小

  • mediaType

属性 类型 描述

mediaType

字符串

引用的对象的 MediaType。

名称

字符串

底层存储中定义的层的名称。

大小

整数

底层存储中定义的层的以字节为单位的大小。

.status.repository.images[].manifests[].dockerImageManifests

描述

当镜像表示清单列表时,DockerImageManifests 包含有关子清单的信息。当存在此字段时,不应指定 DockerImageLayers。

类型

数组

.status.repository.images[].manifests[].dockerImageManifests[]

描述

ImageManifest 表示清单列表的子清单。Digest 字段指向常规的 Image 对象。

类型

对象

必需
  • 摘要

  • mediaType

  • 清单大小

  • 架构

  • 操作系统

属性 类型 描述

架构

字符串

架构指定支持的 CPU 架构,例如 amd64ppc64le

摘要

字符串

摘要是清单的唯一标识符。它引用一个 Image 对象。

清单大小

整数

ManifestSize 表示原始对象内容的大小(以字节为单位)。

mediaType

字符串

MediaType 定义清单的类型,可能的值为 application/vnd.oci.image.manifest.v1+json、application/vnd.docker.distribution.manifest.v2+json 或 application/vnd.docker.distribution.manifest.v1+json。

操作系统

字符串

OS 指定操作系统,例如 linux

变体

字符串

Variant 是一个可选字段,表示 CPU 的变体,例如 v6 指定 ARM CPU 的特定 CPU 变体。

.status.repository.images[].manifests[].signatures

描述

Signatures 包含镜像的所有签名。

类型

数组

.status.repository.images[].manifests[].signatures[]

描述

ImageSignature 包含镜像的签名。只要信任签名,它就可以验证镜像身份以及其他声明。根据此信息,可以将可运行的镜像限制为与集群范围策略匹配的镜像。客户端进行镜像验证时,应解析必填字段。其他字段由服务器从签名的内容中解析。它们仅用于提供信息。

兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • type

  • 内容

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

条件

数组

Conditions 表示对签名的当前状态的最新可用观察结果。

conditions[]

对象

SignatureCondition 描述特定时间特定类型的镜像签名条件。

内容

字符串

必填:不透明的二进制字符串,它是镜像的签名。

创建时间

时间

如果指定,则为签名的创建时间。

镜像标识

字符串

表示镜像标识的可读字符串。它可以是产品名称和版本,或镜像拉取规范(例如,“registry.access.redhat.com/rhel7/rhel:7.2”)。

签发者

对象

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

签发对象

对象

SignatureSubject 包含有关创建签名的个人或实体的信息。

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

metadata 是标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

已签名声明

对象 (字符串)

包含来自签名的声明。

type

字符串

必填:描述存储的 blob 类型。

.status.repository.images[].manifests[].signatures[].conditions

描述

Conditions 表示对签名的当前状态的最新可用观察结果。

类型

数组

.status.repository.images[].manifests[].signatures[].conditions[]

描述

SignatureCondition 描述特定时间特定类型的镜像签名条件。

类型

对象

必需
  • type

  • status

属性 类型 描述

上次探测时间

时间

最后一次检查条件的时间。

上次状态转换时间

时间

条件从一种状态转换到另一种状态的最后一次时间。

消息

字符串

指示上次转换详细信息的可读消息。

原因

字符串

条件最后一次转换的(简要)原因。

status

字符串

条件的状态,True、False、Unknown 之一。

type

字符串

签名条件的类型,Complete 或 Failed。

.status.repository.images[].manifests[].signatures[].issuedBy

描述

SignatureIssuer 包含有关签发证书或密钥的签发者的信息。

类型

对象

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

.status.repository.images[].manifests[].signatures[].issuedTo

描述

SignatureSubject 包含有关创建签名的个人或实体的信息。

类型

对象

必需
  • 公钥 ID

属性 类型 描述

通用名称

字符串

通用名称(例如 openshift-signing-service)。

组织

字符串

组织名称。

公钥 ID

字符串

如果存在,则为用于验证镜像签名的属于主题的公钥的可读密钥 ID。它应至少包含公钥指纹的最低 64 位(例如 0x685ebe62bf278440)。

API 端点

提供以下 API 端点:

  • /apis/image.openshift.io/v1/namespaces/{namespace}/imagestreamimports

    • POST:创建 ImageStreamImport

/apis/image.openshift.io/v1/namespaces/{namespace}/imagestreamimports

表 1. 全局查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段。

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值如下:- 忽略:这将忽略任何未知字段,这些字段将从对象中静默删除,并且只会保留解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- 警告:这将通过标准警告响应报头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- 严格:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将导致请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

HTTP 方法

POST

描述

创建 ImageStreamImport

表 2. 请求体参数
参数 类型 描述

请求体

ImageStreamImport 模式

表 3. HTTP 响应
HTTP 代码 响应体

200 - OK

ImageStreamImport 模式

201 - 已创建

ImageStreamImport 模式

202 - 已接受

ImageStreamImport 模式

401 - 未授权