DeployApplication_Serverless 应用引擎_API文档

插件下载了解更多
VS Code 插件
安装插件之前,确保已安装 VS Code安装插件之前,确保已安装 VS Code
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
JetBrains 插件
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.

流控信息

当前云产品API请求速率暂未透出。

授权信息

如下是此API对应的授权信息,用于RAM权限策略语句的Action元素中,为RAM用户或RAM角色授予调用此API的权限。请通过 RAM 访问控制设置,使用方法可参考访问控制帮助文档

具体说明如下:展开详情

操作访问级别资源类型条件关键字关联操作
sae:DeployApplication
Update
全部资源
*

请求语法

POST /pop/v1/sam/app/deployApplication HTTP/1.1

请求参数

字段名称字段详情
AppIdstring

需要部署的应用 ID。

示例值:7171a6ca-d1cd-4928-8642-7d5cfe69****
Jdkstring

部署包依赖的 JDK 版本。支持版本如下:展开详情

示例值:Open JDK 8
WebContainerstring

部署包依赖的 Tomcat 版本。支持版本如下:展开详情

示例值:apache-tomcat-7.0.91
PackageVersionstring

部署包的版本号。当Package TypeFatJarWarPythonZip 时必填。

示例值:1.0.1
PackageUrlstring

部署包地址。当Package TypeFatJarWarPythonZip 时必填。

示例值:http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar
ImageUrlstring

镜像地址。当Package TypeImage 时必填。

示例值:registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1
Commandstring

镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:展开详情

示例值:echo
CommandArgsstring

镜像启动命令参数。上述启动命令 Command 所需参数。格式如下:展开详情

示例值:["a","b"]
Envsstring

容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建 ConfigMap 实例。更多信息,请参见 CreateConfigMap 。取值说明如下:展开详情

示例值:[ { "name": "sae-sys-configmap-all-hello", "valueFrom": { "configMapRef": { "configMapId": 100, "key": "" } } }, { "name": "hello", "valueFrom": { "configMapRef": { "configMapId": 101, "key": "php-fpm" } } }, { "name": "sae-sys-secret-all-hello", "valueFrom": { “secretRef": { “secretId": 100, "key": "" } } }, { "name": “password”, "valueFrom": { “secretRef": { “secretId": 101, "key": “password” } } }, { "name": "envtmp", "value": "newenv" } ]
CustomHostAliasstring

容器内自定义 Host 映射。取值说明如下:展开详情

示例值:[{"hostName":"samplehost","ip":"127.0.0.1"}]
JarStartOptionsstring

JAR 包启动应用选项。应用默认启动命令:$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs

示例值:custom-option
JarStartArgsstring

JAR 包启动应用参数。应用默认启动命令:$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs

示例值:-Xms4G -Xmx4G
Livenessstring

容器健康检查,健康检查失败的容器将被关闭并恢复。支持方式如下:展开详情

示例值:{"exec":{"command":["sleep","5s"]},"initialDelaySeconds":10,"timeoutSeconds":11}
Readinessstring

应用启动状态检查,多次健康检查失败的容器将被关闭并重启。不通过健康检查的容器将不会有 SLB 流量进入。支持 exechttpGettcpSocket 方式。具体示例,请参见 Liveness 参数。展开详情

示例值:{"exec":{"command":["sleep","6s"]},"initialDelaySeconds":15,"timeoutSeconds":12}
MinReadyInstancesinteger<int32>

最小存活实例数。取值说明如下:展开详情

示例值:1
MinReadyInstanceRatiointeger<int32>

最小存活实例数百分比。取值说明如下:展开详情

示例值:-1
BatchWaitTimeinteger<int32>

批次内部署间隔,单位为秒。

示例值:10
EdasContainerVersionstring

HSF 框架中应用运行环境版本,例如 Ali-Tomcat 容器。

示例值:3.5.3参考取值来源:
    DescribeEdasContainers
UpdateStrategystring

部署策略。当最小存活实例数等于 1 时,UpdateStrategy 字段的值为""。当最小存活实例数大于 1 时,示例如下:展开详情

示例值:{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}
SlsConfigsstring

日志采集到 SLS 的配置。展开详情

示例值:[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]
Timezonestring

时区,默认为Asia/Shanghai

示例值:Asia/Shanghai
NasIdstring

不推荐配置该字段,推荐配置 NasConfigs。NAS 文件系统的 ID。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含 NasId 字段);如果需要清除 NAS 配置,您需要在请求中将该字段的值设置为空字符串(即请求中 NasId 字段的值为"")。

示例值:10d3b4****
MountHoststring

不推荐配置该字段,推荐配置 NasConfigs。NAS 在应用 VPC 内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含 MountHost 字段);如果需要清除 NAS 配置,您需要在请求中将该字段的值设置为空字符串(即请求中 MountHost 字段的值为"")。

示例值:10d3b4bc9****.com
MountDescstring

不推荐配置该字段,推荐配置 NasConfigs。NAS 挂载描述。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含 MountDesc 字段);如果需要清除 NAS 配置,您需要在请求中将该字段的值设置为空字符串(即请求中 MountDesc 字段的值为"")。

示例值:[{mountPath: "/tmp", nasPath: "/"}]参考取值来源:
    DescribeJob
PostStartstring

容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:{"exec":{"command":\["sh","-c","echo hello"\]}}

示例值:{"exec":{"command":["sh","-c","echo hello"]}}
PreStopstring

容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:{"exec":{"command":\["sh","-c","echo hello"\]}}

示例值:{"exec":{"command":["sh","-c","echo hello"]}}
ChangeOrderDescstring

发布单描述信息。

示例值:启动应用参考取值来源:
    ListNamespaceChangeOrders
WarStartOptionsstring

设置 WAR 包部署应用的启动命令,操作步骤与镜像部署的启动命令配置操作相同。更多信息,请参见设置启动命令

示例值:CATALINA_OPTS=\"$CATALINA_OPTS $Options\" catalina.sh run
AutoEnableApplicationScalingRuleboolean

是否自动启用应用弹性伸缩策略。取值说明如下:展开详情

示例值:true
ConfigMapMountDescstring

ConfigMap 挂载描述。使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。参数说明如下:展开详情

示例值:[{"configMapId":16,"key":"test","mountPath":"/tmp"}]参考取值来源:
    DescribeApplicationConfig
TerminationGracePeriodSecondsinteger<int32>

优雅下线超时时间,默认为 30,单位为秒。取值范围为 1~300。

示例值:10取值 <= 6000
EnableAhasstring

是否接入 AHAS。取值说明如下:展开详情

示例值:false
PhpArmsConfigLocationstring

PHP 应用监控挂载路径,需要您保证 PHP 服务器一定会加载这个路径的配置文件。您无需关注配置内容,SAE 会自动渲染正确的配置文件。

示例值:/usr/local/etc/php/conf.d/arms.ini参考取值来源:
    DescribeApplicationConfig
PhpConfigLocationstring

PHP 应用启动配置挂载路径,需要您保证 PHP 服务器会使用这个配置文件启动。

示例值:/usr/local/etc/php/php.ini参考取值来源:
    DescribeApplicationConfig
PhpConfigstring

PHP 配置文件内容。

示例值:k1=v1参考取值来源:
    DescribeApplicationConfig
TomcatConfigstring

Tomcat 文件配置,设置为""或"{}"表示删除配置。取值说明如下:展开详情

示例值:{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}参考取值来源:
    DescribeApplicationConfig
OssMountDescsstring

OSS 挂载描述信息。参数说明如下:展开详情

示例值:[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}]
OssAkIdstring

OSS 读写的 AccessKey ID。

示例值:xxxxxx
OssAkSecretstring

OSS 读写的 AccessKey Secret。

示例值:xxxxxx
EnableGreyTagRouteboolean

是否启用流量灰度规则。该规则仅适用于 Spring Cloud 和 Dubbo 框架的应用。取值说明如下:展开详情

示例值:false
Phpstring

PHP 部署包依赖的 PHP 版本。镜像不支持。

示例值:PHP-FPM 7.0
AcrInstanceIdstring

ACR 企业版实例 ID。当 ImageUrl 为容器镜像服务企业版时必填。

示例值:cri-xxxxxx
AcrAssumeRoleArnstring

跨账号拉取镜像时所需的 RAM 角色的 ARN。更多信息,请参见通过 RAM 角色实现跨云账号授权

示例值:acs:ram::123456789012****:role/adminrole
ImagePullSecretsstring

对应保密字典 ID。

示例值:10
AssociateEipboolean

是否绑定 EIP。取值说明如下:展开详情

示例值:true
KafkaConfigsstring

日志采集到 Kafka 的配置汇总信息。取值说明如下:展开详情

示例值:{"kafkaEndpoint":"10.0.X.XXX:XXXX,10.0.X.XXX:XXXX,10.0.X.XXX:XXXX","kafkaInstanceId":"alikafka_pre-cn-7pp2l8kr****","kafkaConfigs":[{"logType":"file_log","logDir":"/tmp/a.log","kafkaTopic":"test2"},{"logType":"stdout","logDir":"","kafkaTopic":"test"}]}
PvtzDiscoverySvcstring

开启 K8s Service 服务注册发现。取值说明如下:展开详情

示例值:{"portProtocols":[{"port":18012,"protocol":"TCP"}],"portAndProtocol":{"18012":"TCP"},"enable":true}
SwimlanePvtzDiscoverySvcstring
MicroRegistrationstring

选择 Nacos 注册中心,取值说明如下:展开详情

示例值:"0"
MicroRegistrationConfigstring

注册中心配置,仅在注册中心类型为 MSE Nacos 企业版时生效

示例值:{\"instanceId\":\"mse-cn-zvp2bh6h70r\",\"namespace\":\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\"}参考取值来源:
    DescribeApplicationConfig
NasConfigsstring

挂载 NAS 的配置。取值说明如下:展开详情

示例值:[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]
Pythonstring

Python 环境。支持PYTHON 3.9.15

示例值:PYTHON 3.9.15
PythonModulesstring

自定义安装模块依赖。默认安装根目录下 requirements.txt 定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。

示例值:Flask==2.0
Dotnetstring

.NET 框架的版本号: 展开详情

示例值:.NET 3.1
Deploystring

该参数仅对停止状态的应用生效。如果运行中的应用调用 DeployApplication 接口,会立即重新部署。展开详情

示例值:true
PackageTypestring

应用包类型。取值说明如下:展开详情

示例值:FatJar
Cpuinteger<int32>

每个实例所需的 CPU,单位为毫核,不能为 0。目前仅支持以下固定规格:展开详情

示例值:1000
Memoryinteger<int32>

每个实例所需的内存,单位为 MB,不能为 0。与 CPU 为一一对应关系,目前仅支持以下固定规格:展开详情

示例值:1024
Replicasinteger<int32>

实例数。

示例值:1
SecurityGroupIdstring

安全组 ID。

示例值:sg-wz969ngg2e49q5i4****
VSwitchIdstring

应用实例弹性网卡所在的虚拟交换机。该交换机必须位于上述 VPC 内。

示例值:vsw-bp12mw1f8k3jgygk9****
ServiceTagsstring

应用配置的灰度标签

示例值:{\"alicloud.service.tag\":\"g1\"}参考取值来源:
    DescribeAppServiceDetail
EnableNewArmsboolean

是否启用新的 ARMS 功能:展开详情

示例值:true
EnableCpuBurstboolean

是否启用 CPU Burst 功能:展开详情

示例值:true
OidcRoleNamestring

设置身份认证服务 RAM 角色。展开详情

示例值:sae-test
SidecarContainersConfigarray<SidecarContainerConfig>

容器配置信息。

SecretMountDescstring

Secret 挂载描述。使用在命名空间保密字典页面创建的保密字典来向容器中注入保密信息。参数说明如下:展开详情

示例值:[{“secretId":10,”key":"test","mountPath":"/tmp"}]参考取值来源:
    DescribeApplicationConfig
EnableSidecarResourceIsolatedboolean

是否启用 Sidecar 资源隔离:展开详情

示例值:true
CustomImageNetworkTypestring

自定义镜像类型,如果非自定义镜像,需要设置为空字符串:展开详情

示例值:internet
MicroserviceEngineConfigstring
参考取值来源:
    DescribeConfigurationPrice
NewSaeVersionstring

返回参数

字段名称字段详情
RequestIdstring

请求 ID。

示例值:01CF26C7-00A3-4AA6-BA76-7E95F2A3***
Messagestring

附加信息。取值说明如下:展开详情

示例值:success
TraceIdstring

调用链 ID,用于精确查询调用信息。

示例值:ac1a0b2215622246421415014e****
Dataobject

返回结果。

ErrorCodestring

错误码。取值说明如下:展开详情

示例值:
Codestring

接口状态或 POP 错误码。取值说明如下:展开详情

示例值:200
Successboolean

部署应用是否成功。取值说明如下:展开详情

示例值:true

返回示例

错误码

全局错误码
HTTP 状态码错误码错误信息操作
400
Application.MissingJdk
Your application must at least contain a JDK component.诊断
400
InvalidApplication.NotFound
The current application does not exist.诊断
400
InvalidComponent.NotFound
The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.诊断
400
InvalidHostnameIp.Invalid
The hostname and/or IP is invalid: Hostname [%s], IP [%s].诊断
400
InvalidInstanceSpecification.Unsupported
The instance specification is not supported: CPU [%s], memory [%s].诊断
400
InvalidPackageType.NotFound
The package type must be War, FatJar, or Image.诊断
400
InvalidParameter.NotEmpty
You must specify the parameter %s.诊断
400
InvalidParameter.Obviously
The specified parameter is invalid {%s}.诊断
400
InvalidParameter.WithMessage
The parameter is invalid {%s}: %s诊断
400
JarApplication.MissingJdk
A FatJar application must contain JDK.诊断
400
NoComputeResourceQuota.Exceed
Your compute resource is insufficient. Please contact us to raise the quota.诊断
400
PandoraApplication.MissingJdk
The Pandora application is missing a JDK component.诊断
400
PandoraApplication.OnlyJdk
A Pandora application only requires JDK component.诊断
400
WarApplication.MissingJdkWebcontainer
A War application must contain JDK and Tomcat.诊断
400
LogService.ConfigQuotaExceed
The maximum number of Log Service configs is exceeded.诊断
400
LogService.InternalError
An exception occurred while calling Log Service. Please submit a ticket to solve the problem.诊断
400
LogService.LogDirInvalid
The log collection path is invalid.诊断
400
LogService.NotAvailable
Log Service is unavailable. Please activate Log Service first.诊断
400
LogService.ProjectNumQuotaExceed
The maximum number of Log Service projects is exceeded.诊断
400
user.indebt
The user has an outstanding payment.诊断
400
NoComputeResourceQuota.App.Exceed
You can create %s instances for each application. Please submit a ticket to raise the quota.诊断
400
NoComputeResourceQuota.User.Exceed
Your account is limited to create %s instances. Please submit a ticket to raise the quota.诊断
400
System.Upgrading
The system is being upgraded. Please try again later.诊断
400
VolumnPath.Conflict
Conflict between log collection directory and persistent storage directory.诊断
400
Application.ChangerOrderRunning
An application change process is in progress. Please try again later.诊断
400
Application.InvalidStatus
The application status is abnormal. Please try again later.诊断
400
MountConflict.ConfigMap
Conflict detected for ConfigMap path %s.诊断
400
NotFound.ConfigMap
The ConfigMap object (ID: %s) does not exist.诊断
400
NotFound.ConfigMapKey
The key %s of ConfigMap object (ID: %s) does not exist.诊断
400
Package.Version.Too.Long
The maximum length of package version is exceeded.诊断
400
App.Package.Version.Exists
The package version of application already exists.诊断
400
Slb.Occupied
The SLB instance is occupied.诊断
400
Slb.Tag.Not.Qualified
The current SLB instance cannot be reused because it may have been occupied by %s.诊断
400
MinReadyInstances.Not.Smaller.Replicas
The minimum number of available instances must be less than the number of application instances.诊断
400
MinReadyInstanceRatio.Invalid
The ratio of minimum available instances must be between 0 and 100.诊断
400
BatchWaitTime.Not.Smaller.Zero
BatchWaitTime must not be smaller than zero.诊断
400
Sls.Config.Mixed.Multi.Project
The specified Config contains multiple projects.诊断
400
Sls.Config.User.Defined.Missing.Logstore.Info
The specified Config is invalid. Both Project and Logstore must be specified.诊断
400
Sls.Config.User.Defined.Missing.Project.Info
The specified Config is invalid. Both Project and Logstore must be specified.诊断
400
Sls.Logstore.Name.Invalid
The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-".诊断
400
Sls.Logstore.User.Defined.Not.Exist
The user defined Logstore does not exist.诊断
400
Sls.Project.Name.Invalid
The specified project name is invalid. The project name must not contain the prefix "sae-".诊断
400
Sls.Project.User.Defined.Not.Exist
The user defined project does not exist.诊断
400
Sae.Errorcode.Ahas.Create.Error.Message
Failed to create AHAS.诊断
400
InvalidImageUrl.AcrInstanceId.Domain.NotMatch
The specified domain of ImageUrl does not match AcrInstanceId domains.诊断
400
PhpApplication.MissingPhpRuntime
A PHP application must contain PHP Runtime.诊断
400
InvalidParameter.FileName
The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.诊断
400
Sls.Logtail.Name.Invalid
The specified name of Logtail is invalid. The Logtail name must not contain the prefix sae-.诊断
400
InvalidImageUrl.MissingAcrInstanceId
The specified domain of ImageUrl is from ACREE, but you are not specified AcrInstanceId.诊断
400
EnvFromSecretIdConflict.AlreadyExist
The specified SecretId [%s] already exist in the specified Envs.诊断
400
MountConflict.Secret
Conflict detected for Secret path %s.诊断
404
InvalidNamespaceId.NotFound
The specified NamespaceId does not exist.诊断
404
InvalidAcrInstanceId.NotFound
The specified AcrInstanceId does not exist.诊断
404
Associate.Eip.Not.Enough
No sufficient EIPs are available.诊断

变更历史

变更时间变更内容概要操作
2025-03-13
新增请求参数MicroserviceEngineConfig
2025-01-20
新增请求参数SwimlanePvtzDiscoverySvc
2024-12-26
新增请求参数CustomImageNetworkType
2024-12-17
新增请求参数SidecarContainersConfig
新增请求参数EnableSidecarResourceIsolated
2024-12-10
变更错误码400
新增请求参数SecretMountDesc
2024-11-08
新增请求参数OidcRoleName
2024-10-11
新增请求参数EnableCpuBurst
2024-09-12
新增请求参数Dotnet
2024-08-28
新增请求参数EnableNewArms
2024-05-21
新增请求参数MicroRegistrationConfig
新增请求参数ServiceTags

相关示例