CreateContainerGroup(创建容器组)
接口描述
该接口适用于创建容器组
创建容器组前,请先在容器实例的控制台开通容器实例服务。
请求方式
POST(推荐使用)/GET
输入参数
参数 |
类型 |
是否必选 |
描述 |
ContainerGroupName |
String |
是 |
容器组名称,不超过63个字符,只能包含小写字母、数字、和分隔符(“-”,“."),不能以分隔符开头或结尾 |
SubnetId |
String |
是 |
容器组所在的子网 |
SecurityGroupId.N |
String |
是 |
容器组实例绑定的安全组,最多支持3个 |
ChargeType |
String |
是 |
容器组实例的计费方式,目前仅支持按量付费,有效值:HourlyInstantSettlement |
ImageRegistryCredential.N |
Array of ImageRegistryCredential |
否 |
镜像仓库的拉取凭证 |
RestartPolicy |
String |
否 |
容器实例的重启策略,有效值:Always、OnFailure、Never,默认值:Always |
Cpu |
Float |
是 |
容器组的CPU,单位:核 |
Memory |
Float |
是 |
容器组的内存,单位:GiB |
Volume.N |
Array of Volume |
否 |
数据卷信息 |
Container.N |
Array of Container |
是 |
容器组中容器的配置信息 |
HostAliase.N |
Array of HostAliase |
否 |
添加容器组域名解析的记录 |
DnsConfig |
DnsConfig数据类型 |
否 |
容器组DNS配置 |
IngressBandwidth |
Long |
否 |
容器实例网络入方向带宽限速值,单位:Mbps。支持最大限速值为1024。 |
EgressBandwidth |
Long |
否 |
容器实例网络出方向带宽限速值,单位:Mbps。支持最大限速值为1024。 |
ImageRegistryCredential
参数 |
类型 |
是否必选 |
描述 |
Server |
String |
是 |
镜像仓库的地址 |
Username |
String |
是 |
镜像仓库用户名 |
Password |
String |
是 |
镜像仓库登陆密码 |
Volume
目前支持临时目录(EmptyDir)、配置文件(ConfigFile)和云硬盘(EBSVolume)作为存储卷。
当使用ConfigFileVolume时,参数如下:
参数 |
类型 |
是否必选 |
描述 |
Type |
String |
是 |
存储卷的类型,有效值:ConfigFileVolume |
Name |
String |
是 |
存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾 |
ConfigFileVolume |
ConfigFileVolume数据类型 |
是 |
存储卷信息 |
ConfigFileVolume
参数 |
类型 |
是否必选 |
描述 |
ConfigFileToPath.N.Path |
String |
是 |
挂载路径 |
ConfigFileToPath.N.Content |
String |
是 |
挂载的内容,单个内容不超过24KB |
当使用EmptyDirVolume时,参数如下:
参数 |
类型 |
是否必选 |
描述 |
Type |
String |
是 |
存储卷的类型,有效值:EmptyDirVolume |
Name |
String |
是 |
存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾 |
当使用EBSVolume时,参数如下:
参数 |
类型 |
是否必选 |
描述 |
Type |
String |
是 |
存储卷的类型,有效值:EBSVolume |
Name |
String |
是 |
存储卷的名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾 |
EBSVolume |
EBSVolume数据类型 |
是 |
云硬盘信息 |
EBSVolume
参数 |
类型 |
是否必选 |
描述 |
FsType |
String |
是 |
文件系统类型,有效值:ext3、ext4、xfs 当云硬盘有文件系统时,则不进行格式化,直接按照指定的文件系统执行挂载;当云盘没有文件系统时,则按照用户指定的文件系统进行格式化,再进行挂载 |
VolumeId |
String |
是 |
云硬盘的ID,要求云硬盘: - 云硬盘是待挂载的状态 - 云硬盘和容器实例在同一可用区 - 云硬盘的计费方式非包年包月和试用,仅支持按量付费的云硬盘实例 |
DnsConfig
参数 |
类型 |
是否必选 |
描述 |
NameServer.N |
String |
否 |
DNS 服务器 IP 地址列表 |
Search.N |
String |
否 |
DNS 搜索域列表 |
Option.N |
Array of Option |
否 |
- |
Option
参数 |
类型 |
是否必选 |
描述 |
Name |
String |
是 |
对象的Name |
Value |
String |
否 |
对象的Value |
HostAliase
参数 |
类型 |
是否必选 |
描述 |
Hostname.N |
String |
是 |
添加IP |
Ip |
String |
是 |
添加主机名 |
Container
参数 |
类型 |
是否必选 |
描述 |
Name |
String |
是 |
容器名称,不超过63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母、数字开头和结尾 |
Command.N |
Array of String |
否 |
容器启动命令 |
Arg.N |
Array of String |
否 |
容器启动参数 |
EnvironmentVar.N |
Array of EnvironmentVar |
否 |
环境变量 |
Cpu |
Float |
否 |
容器的cpu,单位:核,精确到小数点后3位 |
Memory |
Float |
否 |
内存大小,单位:GiB,精确到小数点后3位 |
Image |
String |
是 |
镜像 |
WorkingDir |
String |
否 |
工作目录 |
Port.N |
Array of Port |
否 |
端口信息 |
VolumeMount.N |
Array of VolumeMount |
否 |
数据卷挂载信息 |
EnvironmentVar
参数 |
类型 |
是否必选 |
描述 |
Key |
String |
是 |
变量名,不超过63个字符,只能包含字母、数字及分隔符("-"、"_"、"."),且必须以字母或分隔符开头 |
Value |
String |
是 |
变量值 |
Port
参数 |
类型 |
是否必选 |
描述 |
Port |
Integer |
是 |
端口号 |
Protocol |
String |
否 |
协议 有效值:TCP、UDP 默认值:TCP |
VolumeMount
参数 |
类型 |
是否必选 |
描述 |
Name |
String |
是 |
数据卷名称 |
MountPath |
String |
否 |
挂载路径 |
ReadOnly |
Boolean |
否 |
读写权限,默认值False |
返回参数
参数 |
类型 |
描述 |
RequestId |
String |
请求id |
ContainerGroupId |
String |
容器实例的id |
调用示例
示例1 创建容器组
输入示例
http://kci.api.ksyun.com/?Action=CreateContainerGroup&Version=2020-07-02
&ContainerGroupName=nginx-kci
&Memory=4
&Cpu=2
&SubnetId=f2ac1919-0e34-4812xxxxxx
&SecurityGroupId.1=d46c7672-7ca9-4f51xxxxxx
&Container.1.Name=nginx-container
&Container.1.Port.1.Port=80
&Container.1.Port.1.Protocol=TCP
&RestartPolicy=Always
&ChargeType=HourlyInstantSettlement
返回示例
{
"RequestId": "cdc0ab95-34fc-403e-b0b1xxxxxx",
"ContainerGroupId": "9f0c0be6-f6fe-4e29xxxxxx"
}