调用CreateImageCache制作镜像缓存。

接口说明

版本:2018-08-08

SDK版本:java 1.0.10以上,python 1.0.7以上。

限制:

1、创建失败的cache默认只会保留一天。

2、用户需要评估需要缓存的镜像的总大小,如果镜像总大小超过设置的缓存大小,制作会失败。

3、每次制作镜像cache,都会自动创建一个job型ECI来制作,制作完成后我们会及时删除ECI,停止计费,所以在制作过程中,不要轻易删除ECI,否则镜像cache制作会失败。

4、如果镜像有问题,想要终止制作,删除返回的镜像cache即可。虽然直接删除对应的ECI job也能生效,但是不推荐直接删除job。

注:每个镜像cache都会对应一个快照snapshot,用户不要直接删除快照,否则缓存会失效。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String CreateImageCache

系统规定参数。取值:CreateImageCache。

RegionId String cn-hangzhou

地域ID,和创建的ECI必须在同一个地域。

ImageCacheName String test-cache

镜像缓存名。

Image.N RepeatList registry-vpc.cn-beijing.aliyuncs.com/eci_open/busybox:1.3

需要缓存的镜像。

SecurityGroupId String sg-uf66jeqopgqa9hdn2***

安全组ID,不要求和创建的ECI保持一致。

VSwitchId String vsw-uf6h3rbwbm90urjwav***

交换机ID,不要求和创建的ECI保持一致。

ZoneId String cn-hangzhou-g

可用区。

ImageRegistryCredential.N.Server String registry-vpc.cn-shanghai.aliyuncs.com

不带 http://https:// 前缀的镜像仓库地址。

ImageRegistryCredential.N.UserName String username

镜像仓库用户名。

ImageRegistryCredential.N.Password String password

镜像仓库密码。

EipInstanceId String eip-xxx

弹性公网 ip,如果要拉取公网镜像,需要确保 ECI 能够访问到公网,用户需要配公网ip。用户也可以配置交换机NAT网关。推荐使用后者。

ImageCacheSize Integer 20

缓存的大小,默认为20 GB。

RetentionDays Integer 7

镜像缓存保留时间,过期将会被清理,默认永不过期。注:制作失败的镜像缓存只会保留一天。

ResourceGroupId String rg-aekzh43v*****

资源组ID。

ClientToken String 123e4567-xxx-xxx-xxxx-42665544xxxx

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持ASCII字符,且不能超过64个字符。更多详情,请参阅如何保证幂等性

Tag.N.Key String name

镜像缓存标签键。

Tag.N.Value String xiao

镜像缓存标签值。

AutoMatchImageCache Boolean true

开启镜像缓存复用。新创建的镜像缓存可以复用已有镜像缓存的镜像层,加快镜像缓存的制作速度。

返回数据

名称 类型 示例值 描述
ContainerGroupId String eci-2zebxkiifuyzzlhl1***

生成Cache的Job(一个ECI实例)。

ImageCacheId String imc-2zebxkiifuyzzlhl1***

镜像缓存ID。

RequestId String FC5F8BF8-4546-4E42-****-881DB1607FFC

请求ID,唯一标识。

示例

请求示例

http(s)://[Endpoint]/?Action=CreateImageCache
&RegionId=cn-hangzhou
&ImageCacheName=test-cache
&Image.1=registry-vpc.cn-beijing.aliyuncs.com/eci_open/busybox:1.3
&SecurityGroupId=sg-uf66jeqopgqa9hdn2***
&VSwitchId=vsw-uf6h3rbwbm90urjwav***
&<公共请求参数>

正常返回示例

XML 格式

<RequestId>FC5F8BF8-4546-4E42-****-881DB1607FFC</RequestId>
<ImageCacheId>imc-2zebxkiifuyzzlhl1***</ImageCacheId>
<ContainerGroupId>eci-2zebxkiifuyzzlhl1***</ContainerGroupId>

JSON 格式

{
    "RequestId": "FC5F8BF8-4546-4E42-****-881DB1607FFC",
    "ImageCacheId": "imc-2zebxkiifuyzzlhl1***",
    "ContainerGroupId": "eci-2zebxkiifuyzzlhl1***"
}

错误码

HttpCode 错误码 错误信息 描述
400 Account.Arrearage Your account has an outstanding payment. 账号已经欠费。
400 DryRunOperation Request validation has been passed with DryRun flag set. 此次DryRun预检请求合格。
400 InvalidParameter.CPU.Memory The specified cpu and memory are not allowed cpu,mem不符合规格
403 OperationDenied.VswZoneMisMatch The specified VSwitchId is not in the specified Zone. 指定的交换机不在可用区
403 QuotaExceeded %s quota exceeded. 用户允许创建的实例已经超过限制
403 Zone.NotOnSale The specified zone is not available for purchase. 创建实例的可用区已经关闭售卖,请更换其他可用区。或者无法在该可用区使用指定 VPC 的虚拟交换机。
403 Forbidden.RiskControl This operation has been identified as an abnormal operation and cannot be processed. 此操作已被确定为一个操作异常,无法处理。
403 Forbidden.SubUser The specified action is not available for you. 当前用户无法执行该操作
403 Forbidden.OnlyForInvitedTest Eci create action is only open to invited users during public beta. Eci公测阶段只对受邀的用户开放。
400 IncorrectStatus %s 指定的实例状态不正确。
403 OperationDenied.SecurityGroupMisMatch The specified VSwitchId and SecurityGroupId are not in the same VPC. 指定的交换机和安全组不在同一个VPC下
403 InvalidVSwitchId.IpNotEnough The specified VSwitch does not have enough IP addresses. 交换机没有足够ip地址
403 Forbidden.UserBussinessStatus This operation is not allowed, because you have overdue bills. Pay the overdue bill and try again. 用户处于欠费状态不允许创建,请充值后再尝试。
403 Forbidden.UserNotRealNameAuthentication This operation is not allowed, because you have not passed the real-name verification. 操作被禁止,因为用户还未进行实名认证。
400 ServiceNotEnabled %s 该次请求所依赖的服务没有开通,请开通后再试。
400 DiskVolume.NotSupport The disk volume is not supported. 云盘卷暂不支持,如有需要请联系我们。
403 InvalidUser.PassRoleForbidden The RAM user is not authorized to assume a RAM role. 子账号用户没有权限使用RAM实例角色
400 RamRole.NotSupport The RAM role is not supported. ram实例角色不支持
400 ImageCache.IncorrectStatus %s 镜像缓存当前的状态不对。
400 ImageCacheNotSupport Image cache is not available for all users. If you want to enable this function, contact us. 镜像缓存功能还未全网开放,如果有需要请联系我们。
403 OperationDenied.NoStock Sales of this resource are temporarily suspended in the specified zone. We recommend that you use the multi-zone creation function to avoid the risk of insufficient resource. For more information, see https://help.aliyun.com/document_detail/157290.html 库存不足,请尝试其它系列或者其它可用区/地域的实例,推荐使用多可用区多规格配置来避免库存不足,更多信息见:https://help.aliyun.com/document_detail/157290.html
403 NoPermission The RAM role AliyunECIContainerGroupRole does not belong to eci.aliyuncs.com. Please check and try again. RAM 角色 "AliyunECIContainerGroupRole" 不属于 "eci.aliyuncs.com",请检查后重试。

访问错误中心查看更多错误码。

说明 :如果需要通过镜像缓存创建Eci,可以参考如何使用imageCache来创建ECI