创建App
更新时间:
CreateApp
描述
创建一个 app 资源
请求语法
请求行:
POST /apps?IdempotentToken=vU7xaM9YCqqAFHAVvRVynoMBZSgD0MPn HTTP/1.1
请求方法 POST,请求资源为 apps,请求参数为:
| 属性名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| IdempotentToken | string | 否 | 用于保证请求的幂等性。由用户生成该参数值,要保证在不同请求间唯一,最大不值过64个字符,字符包括了字母、数字以及下划线。 |
请求数据:
请求数据以 JSON 格式描述:
{"Name": "test-copy","Description": "Copy input file to output file","CommandLine": "cp -rf ${inputFile} ${outputFile}","Daemonize": false,"EnvVars": {"key1": "value1","key2": "value2"},"InputParameters": {"inputFile": {"Description": "Input param","Type": "String","Default": "","LocalPath": "/tmp/infile/"}},"OutputParameters": {"outputFile": {"Type": "String","Description": "Output param","LocalPath": "/tmp/outfile/"}},"VM": {"ECSImageId": "img-unbuntu"},"Docker": {"Image": "ubuntu:14.04","RegistryOSSPath": "oss://bucket/registry"},"Config": {"ResourceType": {"Description": "Resource type","Default": "OnDemand","Overwritable": true},"InstanceType": {"Description": "Instance type","Default": "ecs.sn2ne.large","Overwritable": true},"InstanceCount": {"Description": "Instance count","Default": 1,"Overwritable": true},"DiskType": {"Description": "Disk type","Default": "cloud_efficiency","Overwritable": true},"MinDiskSize": {"Description": "Min Disk size","Default": 40,"Overwritable": true},"MinDataDiskSize": {"Default": 100,"Description": "Min data disk size","Overwritable": true},"DataDiskType": {"Default": "cloud_efficiency","Description": "Data disk type","Overwritable": true},"DataDiskMountPoint": {"Default": "/home/mount/","Description": "Data disk mount point","Overwritable": true},"MaxRetryCount": {"Description": "Max retry count","Default": 2,"Overwritable": true},"Timeout": {"Description": "Time out","Default": 600000,"Overwritable": true}}}
属性说明:
参数
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Name | string | 是 | 应用名称。允许的字符集为[a-zA-Z0-9_-],长度不能大于64,不能为空 |
| Description | string | 否 | 应用的详细描述。长度不能大于1000。默认值:空 |
| InputParameters | map<string, object(InputParameter)> | 否 | 该应用的输入参数列表。Map 大小不能大于50,不能小于0。对于 Key,允许的字符集为[a-zA-Z0-9_-],长度不能大于100。默认值:{} |
| OutputParameters | map<string, object(OutputParameter)> | 否 | 该应用的输出参数列表。Map 大小不能大于50,不能小于0。对于 Key,允许的字符集为[a-zA-Z0-9_-],长度不能大于100。默认值:{} |
| Docker | object(Docker) | 否 | Docker 镜像有关配置。 Docker 和 VM 属性只能配置一个,并且必须要配置一个 |
| VM | object(VM) | 否 | ECS 虚拟机相关配置 |
| CommandLine | string | 是 | 执行应用时的命令行。长度不能大于1000 |
| EnvVars | map<string, string> | 否 | 环境变量。Map 大小不能大于50,不能小于0。对于 Key,允许的字符集为[a-zA-Z0-9_-],长度不能大于100。对于 Value,长度不能大于1000。默认值:{} |
| Daemonize | boolean | 否 | 应用在执行时,是否每次都要重新启动。默认值:False |
| Config | object(Config) | 否 | 提交作业时的运行时参数 |
InputParameter
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 参数描述。长度不能大于1000。默认值:空 |
| Type | string | 否 | 参数类型。枚举类型,可选值为:String、Number。默认值:String |
| Default | Any | 否 | 参数默认值。类型必须与 Type 指定的类型相同。默认值:null |
| LocalPath | string | 否 | LocalPath 不为空说明该参数是 OSS 上的一个文件或者目录。在计算分析时,系统会将该参数值指定的 OSS 文件或者目录映射为本地 LocalPath 指定的文件或者目录。仅支持使用 UTF-8 编码。如果是目录,则必须以 “/“ 结尾。长度不能大于1000。默认值:空 |
OutputParameter
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 参数描述。长度不能大于1000。默认值:空 |
| Type | string | 否 | 参数类型。枚举类型,可选值为:String、Number。默认值:String |
| LocalPath | string | 否 | LocalPath 不为空说明该参数是 OSS 上的一个文件或者目录。在计算分析时,系统会将本地 LocalPath 指定的文件或者目录映射为该参数值指定的 OSS 文件或者目录。仅支持使用 UTF-8 编码。如果是目录,则必须以 “/“ 结尾。长度不能大于1000。默认值:空 |
Docker
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Image | string | 是 | Docker 镜像。长度不能大于1000 |
| RegistryOSSPath | string | 否 | docker registry storage 在 OSS 上的根目录。长度不能大于1000。默认值:空 |
VM
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| ECSImageId | string | 是 | ECS 镜像 Id。允许的字符集为[a-zA-Z0-9_-],长度不能大于100 |
Config
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| ResourceType | object(ResourceType) | 否 | 资源类型 |
| InstanceType | object(InstanceType) | 否 | 实例类型 |
| InstanceCount | object(InstanceCount) | 否 | 实例数量 |
| MinDiskSize | object(MinDiskSize) | 否 | 最小系统盘大小 (GB) |
| DiskType | object(DiskType) | 否 | 系统盘类型 |
| MinDataDiskSize | object(MinDataDiskSize) | 否 | 最小数据盘大小 (GB) |
| DataDiskType | object(DataDiskType) | 否 | 数据盘类型,需要和系统盘类型保持一致 |
| DataDiskMountPoint | object(DataDiskMountPoint) | 否 | 数据盘挂载点 |
| MaxRetryCount | object(MaxRetryCount) | 否 | 某个 Instance 失败后,最大重试次数 |
| Timeout | object(Timeout) | 否 | Instance 的运行时超时时间,单位为秒 |
ResourceType
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | string | 否 | 参数默认值。枚举类型,可选值为:OnDemand、Spot。默认值:OnDemand |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
InstanceType
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | string | 否 | 参数默认值。长度不能大于1000。默认值:空 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
InstanceCount
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | number | 否 | 参数默认值。必须为整数,不能大于1000,不能小于0。默认值:1 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
MinDiskSize
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | number | 否 | 参数默认值。必须为整数,不能大于500,不能小于40。默认值:40 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
DiskType
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | string | 否 | 参数默认值。枚举类型,可选值为:cloud、ephemeral、cloud_efficiency。默认值:cloud_efficiency |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
MinDataDiskSize
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | string | 否 | 参数默认值。必须为整数,不能大于32768,不能小于20。默认值:0,表示不使用数据盘 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
DataDiskType
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | string | 否 | 参数默认值。枚举类型,可选值为:cloud、ephemeral、cloud_efficiency,但是必须和系统盘类型 DiskType 保持一致。默认值:cloud_efficiency |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
DataDiskMountPoint
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | string | 否 | 参数默认值。字符串类型,指定数据盘的挂载点,长度不能大于1000。在 Windows 环境下只能指定到特定的盘符,如 “D:”,盘符字母从 A-Z,除 C 以外均可。默认值:空 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
MaxRetryCount
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | number | 否 | 参数默认值。必须为整数,不能大于1000,不能小于0。默认值:0 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
Timeout
| 参数名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| Description | string | 否 | 给 APP 使用者的详细描述。长度不能大于1000。默认值:空 |
| Default | number | 否 | 参数默认值。必须为整数,不能大于1000000000,不能小于0。默认值:86400 |
| Overwritable | boolean | 否 | 用户使用该 APP 提交作业时,是否可以覆盖掉默认值。默认值:True |
返回信息
成功
响应行:
HTTP/1.1 201 Created
响应数据:
{"Name": "test-copy"}
响应参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| Name | string | App 标识符 |
错误
该文章对您有帮助吗?