×
描述

ImageStreamImage 代表从 ImageStream 中按镜像名称检索到的镜像。用户界面和普通用户可以使用此资源访问镜像流历史记录中标记镜像的元数据详细信息以进行查看,因为最终用户无法直接访问镜像资源。如果 ImageStream 中的标签没有引用此类镜像,则会返回未找到错误。当设置镜像流上的 spec 标签来表示外部注册表中的镜像、推送到集成注册表或将现有镜像从一个镜像流标记到另一个镜像流时,将创建镜像。镜像流镜像的名称格式为“<STREAM>@<DIGEST>”,其中摘要是镜像的内容寻址标识符 (sha256:xxxxx…)。您可以使用 ImageStreamImages 作为镜像流规范标签的 from.kind 来精确引用镜像。ImageStreamImage 端点上唯一支持的操作是检索镜像。

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

类型

对象

必需
  • image

规格

属性 类型 描述

apiVersion

字符串

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

image

对象

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

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

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

.image

描述

镜像是容器镜像及其元数据在特定时间点的不可变表示。镜像的命名是通过对其内容(元数据和内容)进行哈希计算得到的,任何格式、内容或元数据的更改都会导致新的名称。镜像资源主要供集群管理员和集群镜像注册表等集成使用——最终用户通过 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 指定清单的媒体类型。这是清单模式 v2 的一部分。

dockerImageManifests

数组

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

dockerImageManifests[]

对象

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

dockerImageMetadata

RawExtension

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

dockerImageMetadataVersion

字符串

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

dockerImageReference

字符串

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

dockerImageSignatures

数组 (字符串)

DockerImageSignatures 将签名作为不透明的块提供。这是清单模式 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 个次要版本(以较长者为准)。

.image.dockerImageLayers

描述

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

类型

数组

.image.dockerImageLayers[]

描述

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

类型

对象

必需
  • name

  • size

  • mediaType

属性 类型 描述

mediaType

字符串

引用的对象的媒体类型。

name

字符串

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

size

整数

由底层存储定义的层的字节大小。

.image.dockerImageManifests

描述

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

类型

数组

.image.dockerImageManifests[]

描述

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

类型

对象

必需
  • digest

  • mediaType

  • manifestSize

  • architecture

  • os

属性 类型 描述

architecture

字符串

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

digest

字符串

Digest 是清单的唯一标识符。它指向一个 Image 对象。

manifestSize

整数

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

字符串

OS 指定操作系统,例如 linux

variant

字符串

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

.image.signatures

描述

Signatures 包含镜像的所有签名。

类型

数组

.image.signatures[]

描述

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

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

类型

对象

必需
  • type

  • content

属性 类型 描述

apiVersion

字符串

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

conditions

数组

Conditions 代表对签名的当前状态的最新可用观测。

conditions[]

对象

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

content

字符串

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

created

时间

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

imageIdentity

字符串

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

issuedBy

对象

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

issuedTo

对象

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

signedClaims

对象 (字符串)

包含来自签名的声明。

type

字符串

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

.image.signatures[].conditions

描述

Conditions 代表对签名的当前状态的最新可用观测。

类型

数组

.image.signatures[].conditions[]

描述

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

类型

对象

必需
  • type

  • status

属性 类型 描述

lastProbeTime

时间

上次检查条件的时间。

lastTransitionTime

时间

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

message

字符串

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

reason

字符串

条件最后转换的(简短)原因。

status

字符串

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

type

字符串

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

.image.signatures[].issuedBy

描述

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

类型

对象

属性 类型 描述

commonName

字符串

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

organization

字符串

组织名称。

.image.signatures[].issuedTo

描述

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

类型

对象

必需
  • publicKeyID

属性 类型 描述

commonName

字符串

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

organization

字符串

组织名称。

publicKeyID

字符串

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

API 端点

提供以下 API 端点

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

    • GET:读取指定的 ImageStreamImage

/apis/image.openshift.io/v1/namespaces/{namespace}/imagestreamimages/{name}

表 1. 全局路径参数
参数 类型 描述

name

字符串

ImageStreamImage 的名称

HTTP 方法

GET

描述

读取指定的 ImageStreamImage

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

200 - OK

ImageStreamImage 模式

401 - 未授权