创建应用模板
功能介绍
该API用于创建一个应用模板。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v2/{project_id}/edgemgr/apps
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Content-Type |
是 |
String |
消息体的类型(格式),默认取值为“application/json” |
X-Auth-Token |
是 |
String |
用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
ief-instance-id |
否 |
String |
铂金版实例ID,专业版实例为空值 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
app |
是 |
AppDetail object |
应用模板配置 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
应用模板名称,只允许英文小写字母、数字、中划线,最大长度32, 英文小写字母或数字开头和结尾 Name为必填字段 |
alias |
否 |
String |
应用模板别名,中文英文字母、数字、中划线、下划线,最大64字符 |
description |
否 |
String |
应用模板描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \ |
icon_url |
否 |
String |
应用图标存储url地址,最大长度2083 |
tags |
否 |
Array of NodeResTag objects |
应用模板标签 |
响应参数
状态码: 201
参数 |
参数类型 |
描述 |
---|---|---|
app |
AppResponse object |
应用模板配置 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
应用模板ID |
name |
String |
应用模板名称,只允许英文小写字母、数字、中划线,最大长度32, 英文小写字母或数字开头和结尾 Name为必填字段,且本租户中唯一 |
alias |
String |
应用模板别名,中文英文字母、数字、中划线、下划线,最大64字符 |
description |
String |
应用模板描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \ |
icon_url |
String |
应用图标存储url地址,最大长度2083 |
created_at |
String |
创建时间 |
project_id |
String |
项目ID |
visibility |
String |
模板类型 |
app_versions |
Array of AppVersionDetail objects |
app详情 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
应用版本ID |
version |
String |
应用版本号 |
created_at |
String |
创建时间 |
updated_at |
String |
更新时间 只有更新后才会出现该字段 |
project_id |
String |
项目ID |
image_url |
String |
镜像存储地址 |
envs |
Array of Env objects |
环境变量 |
volumes |
Array of Volumes objects |
卷配置 |
configs |
AppConfigs object |
容器特殊参数 |
resources |
Resources object |
容器使用的资源 |
arch |
String |
架构 |
command |
Array of strings |
启动命令 |
args |
Array of strings |
参数 |
liveness_probe |
ProbeDetail object |
工作负载存活探针 |
readiness_probe |
ProbeDetail object |
工作负载业务探针 |
npu_type |
String |
NPU类型,支持D310、D310B,支持填写:
|
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
环境变量的key,由大小写字母或下划线开头,由数字、大小写字母、下划线组成,最大长度2048个字符,不允许重复 |
value |
String |
环境变量的value,最大长度20480个字符。value、value_from和field_path必须三选一使用。 |
value_from |
ValueFrom object |
环境变量可使用配置项和密钥导入 |
field_path |
String |
该参数目前只支持赋值"status.hostIP",即引用边缘节点的IP地址作为环境变量。 |
参数 |
参数类型 |
描述 |
---|---|---|
secret |
Secrets object |
环境变量引用密钥时使用。使用ValueFrom时,secret与configmap必须二选一。 |
configmap |
ConfigsMap object |
环境变量引用配置项时使用。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
卷名称,小写字母或数字,最长63个字符 |
type |
String |
卷的类型,支持configMap,secret,emptyDir,hostPath |
source |
String |
卷来源,type为hostPath时输入路径,要求以/开头,后面可包含中划线,反斜杠,下划线,点号,字母,数字; secret时输入secret名称,configMap时输入configMap名称,emptyDir时输入disk或memory |
destination |
String |
卷挂载路径,必须是合法的路径 |
read_only |
Boolean |
读写权限,configMap和secret类型只支持读权限 |
default_mode |
Integer |
挂载的文件权限,仅configMap和secret类型生效,默认为0644,支持填写十进制和八进制参数 |
参数 |
参数类型 |
描述 |
---|---|---|
privileged |
Boolean |
默认为false,表示是否开启特权模式 |
run_as_user |
Integer |
容器运行用户ID,输入范围为0~65534的整数 |
host_network |
Boolean |
默认为true,其中true表示主机网络,而false表示端口映射 |
restart_policy |
String |
应用实例重启模式:
|
ports |
Array of Ports objects |
容器端口映射值 |
host_pid |
Boolean |
应用实例是否与主机共PID命名空间,默认值false |
dns_policy |
String |
应用实例DNS策略,可选值Default、ClusterFirst、ClusterFirstWithHostNet,默认为Default。应用实例启用主机网络时只能选填Default、ClusterFirstWithHostNet,不启用主机网络时只能选填Default、ClusterFirst |
参数 |
参数类型 |
描述 |
---|---|---|
container_port |
Integer |
构成一堆映射的容器端口 |
host_port |
Integer |
构成一对映射的物理机对应网卡端口 |
host_ip |
String |
对应网卡地址 |
参数 |
参数类型 |
描述 |
---|---|---|
limits |
LimitsRequests object |
允许容器使用的最大资源 |
requests |
LimitsRequests object |
容器需要使用的最小资源 |
参数 |
参数类型 |
描述 |
---|---|---|
cpu |
Float |
cpu核数,大于等于0.01,最大1000;请求不需要带单位 |
memory |
Float |
内存大小,单位兆,大于等于0.01,最大1024000。注意:内存的limits值最小为4;请求不需要带单位 |
gpu |
Float |
Gpu显存大小,单位兆,大于等于0.01,最大1024000;请求不需要带单位 |
npu |
Integer |
Npu个数,大于0,最大1000;请求不需要带单位 |
参数 |
参数类型 |
描述 |
---|---|---|
exec_command |
String |
执行探测的命令行命令,长度1-10240内的字符串 |
http_get |
HttpGetDetail object |
执行http探测 |
initial_delay_seconds |
Integer |
表示从工作负载启动后从多久开始探测,大于0且不大于3600的整数,默认为10 |
timeout_seconds |
Integer |
表示探测超时时间,大于0且不大于3600的整数,默认为1 |
请求示例
创建一个应用模板,应用图标存储地址为空,添加应用模板标签,key为“ief-application-type”,value为“test”。
{ "app" : { "name" : "ief-application-test", "alias" : "test", "description" : "This is an application test", "icon_url" : null, "tags" : [ { "key" : "ief-application-type", "value" : "test" } ] } }
响应示例
状态码: 201
ok
{ "app" : { "name" : "test-app-1", "icon_url" : null, "created_at" : "2018-05-26T08:41:33", "visibility" : null, "alias" : null, "project_id" : "{project_id}", "id" : "6c2c5f97-5c1d-408e-a0ee-c35c287afefe", "description" : "test", "app_versions" : [ ] } }
状态码
状态码 |
描述 |
---|---|
201 |
ok |
错误码
请参见错误码。