All Products
Search
Document Center

Serverless App Engine:DeployApplication

Last Updated:Jul 10, 2026

Deploys an application.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

sae:DeployApplication

update

*All Resource

*

None None

Request syntax

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

Request parameters

Parameter

Type

Required

Description

Example

AppId

string

Yes

The ID of the application to deploy.

7171a6ca-d1cd-4928-8642-7d5cfe69****

Jdk

string

No

The JDK version on which the deployment package depends. Valid values:

  • Open JDK 8

  • Open JDK 7

  • Dragonwell 11

  • Dragonwell 8

  • openjdk-8u191-jdk-alpine3.9

  • openjdk-7u201-jdk-alpine3.9

This parameter is not supported when Package Type is set to Image.

Open JDK 8

WebContainer

string

No

The Tomcat version on which the deployment package depends. Valid values:

  • apache-tomcat-7.0.91

  • apache-tomcat-8.5.42

This parameter is not supported when Package Type is set to Image.

apache-tomcat-7.0.91

PackageVersion

string

No

The version number of the deployment package. This parameter is required when Package Type is set to FatJar, War, or PythonZip.

1.0.1

PackageUrl

string

No

The URL of the deployment package. This parameter is required when Package Type is set to FatJar, War, or PythonZip.

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

ImageUrl

string

No

The image URL. This parameter is required when Package Type is set to Image.

registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1

Command

string

No

The image startup command. The command must be an executable object in the container. Example:

command:
      - echo
      - abc
      - >
      - file0

Based on the preceding example, Command="echo", CommandArgs=["abc", ">", "file0"].

echo

CommandArgs

string

No

The arguments of the image startup command. These are the arguments required by the startup command specified in Command. Format:

["a","b"]

In the preceding example, CommandArgs=["abc", ">", "file0"], where ["abc", ">", "file0"] must be converted to a String type, and the internal format is a JSON array. If this parameter is not required, leave it empty.

["a","b"]

Envs

string

No

The container environment variable parameters. You can customize environment variables or reference ConfigMap items. To reference a ConfigMap item, create a ConfigMap instance first. For more information, see CreateConfigMap. Valid values:

  • Custom configuration
    • name: the name of the environment variable.

    • value: the value of the environment variable. This takes priority over valueFrom.

  • Reference a ConfigMap item (valueFrom)
    • name: the name of the environment variable. To reference all keys, enter sae-sys-configmap-all-<ConfigMap name>, such as sae-sys-configmap-all-test1.

    • valueFrom: the environment variable reference. Set the value to configMapRef.

    • configMapId: the ConfigMap ID.

    • key: the key. Do not set this field if you want to reference all keys.

  • Reference a secret (valueFrom)
    • name: the name of the environment variable. To reference all keys, enter sae-sys-secret-all-<secret name>, such as sae-sys-secret-all-test1.

    • valueFrom: the environment variable reference. Set the value to secretRef.

    • secretId: the secret ID.

    • key: the key. Do not set this field if you want to reference all keys.

[ { "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" } ]

CustomHostAlias

string

No

The custom host mapping in the container. Valid values:

  • hostName: the domain name or hostname.

  • ip: the IP address.

[{"hostName":"samplehost","ip":"127.0.0.1"}]

JarStartOptions

string

No

The startup options for a JAR package-based application. The default startup command is $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs.

custom-option

JarStartArgs

string

No

The startup arguments for a JAR package-based application. The default startup command is $JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs.

-Xms4G -Xmx4G

Liveness

string

No

The container health check. Containers that fail the health check are shutdown and recovered. The following methods are supported:

  • exec: for example, {"exec":{"command":\["sh","-c","cat/home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}

  • httpGet: for example, {"httpGet":{"path":"/","port":18091,"scheme":"HTTP","isContainKeyWord":true,"keyWord":"SAE"},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}

  • tcpSocket: for example, {"tcpSocket":{"port":18091},"initialDelaySeconds":11,"periodSeconds":10,"timeoutSeconds":1}

Note

Only one method can be selected for health checks.

Settings:

  • exec.command: sets the health check command.

  • httpGet.path: the access path.

  • httpGet.scheme: HTTP or HTTPS.

  • httpGet.isContainKeyWord: true indicates that the keyword is included, false indicates that the keyword is not included, and the absence of this field indicates that the advanced feature is not used.

  • httpGet.keyWord: the custom keyword. The isContainKeyWord field must be present when this parameter is used.

  • tcpSocket.port: the port for TCP connection detection.

  • initialDelaySeconds: sets the initial delay for the health check. Default value: 10. Unit: seconds.

  • periodSeconds: sets the health check epoch. Default value: 30. Unit: seconds.

  • timeoutSeconds: sets the health check timeout period. Default value: 1. Unit: seconds. If this parameter is set to 0 or is not set, the default timeout period is 1 second.

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

Readiness

string

No

The application startup status check. Containers that fail multiple health checks are shut down and restarted. Containers that do not pass the health check do not receive SLB traffic. The exec, httpGet, and tcpSocket methods are supported. For specific examples, see the Liveness parameter.

Note

Only one method can be selected for health checks.

{"exec":{"command":["sleep","6s"]},"initialDelaySeconds":15,"timeoutSeconds":12}

MinReadyInstances

integer

No

The minimum number of available instances. Valid values:

  • If this parameter is set to 0, service is interrupted during the upgrade.

  • If this parameter is set to -1, the system-recommended value is used, which is 25% of the current number of instances. If the current number of instances is 5, 5 × 25% = 1.25, which is rounded up to 2.

Note

The minimum number of available instances for each rolling deployment should be ≥ 1 to prevent service interruption.

1

MinReadyInstanceRatio

integer

No

The minimum percentage of available instances. Valid values:

  • -1: the initialization value, which indicates that the percentage is not used.

  • 0~100: the unit is percentage, rounded up. For example, if this parameter is set to 50% and the current number of instances is 5, the minimum number of available instances is 3.

Note

When both MinReadyInstance and MinReadyInstanceRatio are specified and the value of MinReadyInstanceRatio is not -1, the MinReadyInstanceRatio parameter takes precedence. For example, if MinReadyInstances is set to 5 and MinReadyInstanceRatio is set to 50, the value 50 is used to calculate the minimum number of available instances.

-1

BatchWaitTime

integer

No

The interval between deployment batches. Unit: seconds.

10

EdasContainerVersion

string

No

The version of the application runtime environment in the HSF framework, such as the Ali-Tomcat container.

3.5.3

UpdateStrategy

string

No

The deployment policy. When the minimum number of available instances is 1, the value of the UpdateStrategy field is "". When the minimum number of available instances is greater than 1, examples are as follows:

  • Grayscale 1 instance + 2 subsequent batches + automatic batching + 1-minute batch interval: {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}

  • Grayscale 1 instance + 2 subsequent batches + manual batching: {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}

  • 2 batches + automatic batching + 0-minute batch interval: {"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}

Settings:

  • type: the publish policy type. Valid values: GrayBatchUpdate (grayscale publish) and BatchUpdate (batch publish).

  • batchUpdate: the batch publish policy.

    • batch: the number of publish batches.

    • releaseType: the processing method between batches. Valid values: auto (automatic) and manual (manual).

    • batchWaitTime: the interval between batches. Unit: minutes.

  • grayUpdate: the number of grayscale instances. This parameter is required when type is set to GrayBatchUpdate.

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

SlsConfigs

string

No

The configuration for log collection to Simple Log Service.

  • Use SLS resources automatically created by Serverless App Engine: [{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}].

  • Use custom SLS resources: [{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}].

Settings:

  • projectName: the name of the project in Simple Log Service.

  • logDir: the log path.

  • logType: the log type. stdout indicates container standard output logs, and only one entry can be set. If this parameter is not set, file logs are collected.

  • logstoreName: the name of the Logstore in Simple Log Service.

  • logtailName: the name of the Logtail in Simple Log Service. If this parameter is not specified, a new Logtail is created by automatic creation.

If the SLS collection configuration has not changed during multiple deployments, you do not need to set this parameter (that is, the SlsConfigs field does not need to be included in the request). If you no longer need the SLS collection feature, set the value of this field to an empty string (that is, set the value of the SlsConfigs field to "" in the request).

Note

A project that is automatically created with the application is deleted when the application is deleted. Therefore, do not select a project that is automatically created by Serverless App Engine when selecting an existing project.

[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]

Timezone

string

No

The time zone. Default value: Asia/Shanghai.

Asia/Shanghai

NasId

string

No

We do not recommend that you configure this field. Configure NasConfigs instead. The ID of the NAS file system. If the configuration has not changed during deployment, you do not need to set this parameter (that is, the NasId field does not need to be included in the request). To clear the NAS configuration, set the value of this field to an empty string (that is, set the value of the NasId field to "" in the request).

10d3b4****

MountHost

string

No

We do not recommend that you configure this field. Configure NasConfigs instead. The mount point of the NAS file system in the VPC of the application. If the configuration has not changed during deployment, you do not need to set this parameter (that is, the MountHost field does not need to be included in the request). To clear the NAS configuration, set the value of this field to an empty string (that is, set the value of the MountHost field to "" in the request).

10d3b4bc9****.com

MountDesc

string

No

We do not recommend that you configure this field. Configure NasConfigs instead. The NAS mount description. If the configuration has not changed during deployment, you do not need to set this parameter (that is, the MountDesc field does not need to be included in the request). To clear the NAS configuration, set the value of this field to an empty string (that is, set the value of the MountDesc field to "" in the request).

[{mountPath: "/tmp", nasPath: "/"}]

PostStart

string

No

The script that is run after the container starts. A script is triggered immediately after the container is created. Format: {"exec":{"command":\["sh","-c","echo hello"\]}}.

{"exec":{"command":["sh","-c","echo hello"]}}

PreStop

string

No

The script that is run before the container stops. A script is triggered before the container is deleted. Format: {"exec":{"command":\["sh","-c","echo hello"\]}}.

{"exec":{"command":["sh","-c","echo hello"]}}

ChangeOrderDesc

string

No

The description of the change order.

Start application

WarStartOptions

string

No

The startup command for deploying a WAR package-based application. The configuration procedure is the same as that for the startup command of an image-based deployment. For more information, see Configure a startup command.

CATALINA_OPTS=\"$CATALINA_OPTS $Options\" catalina.sh run

AutoEnableApplicationScalingRule

boolean

No

Specifies whether to automatically enable the application elastic scaling policy. Valid values:

  • true: enabled.

  • false: disabled.

true

ConfigMapMountDesc

string

No

The ConfigMap mount description. Use a ConfigMap created on the namespace configuration items page to inject configuration information into the container. Settings:

  • configMapId: the ConfigMap instance ID. You can obtain it by calling the ListNamespacedConfigMaps operation.

  • key: the key.

Note

You can mount all keys by passing the sae-sys-configmap-all parameter.

  • mountPath: the mount path.

[{"configMapId":16,"key":"test","mountPath":"/tmp"}]

TerminationGracePeriodSeconds

integer

No

The graceful shutdown timeout period. Default value: 30. Unit: seconds. Valid values: 1 to 300.

10

EnableAhas

string

No

Specifies whether to enable Application High Availability Service (AHAS). Valid values:

  • true: enables AHAS.

  • false: does not enable AHAS.

false

PhpArmsConfigLocation

string

No

The mount path for PHP application monitoring. Ensure that the PHP server loads the configuration file from this path. You do not need to manage the configuration content because Serverless App Engine automatically renders the correct configuration file.

/usr/local/etc/php/conf.d/arms.ini

PhpConfigLocation

string

No

The mount path for the PHP application startup configuration. Ensure that the PHP server uses this configuration file for startup.

/usr/local/etc/php/php.ini

PhpConfig

string

No

The content of the PHP configuration file.

k1=v1

TomcatConfig

string

No

The Tomcat configuration. Set this parameter to "" or "{}" to delete the configuration. Valid values:

  • port: the port number. Valid values: 1024 to 65535. Ports smaller than 1024 require root permissions. Because the container is configured with admin permissions, specify a port greater than 1024. Default value: 8080.

  • contextPath: the access path. Default value: root directory "/".

  • maxThreads: the connection pool size. Default value: 400.

  • uriEncoding: the encoding format of Tomcat. Valid values: UTF-8, ISO-8859-1, GBK, and GB2312. Default value: ISO-8859-1.

  • useBodyEncodingForUri: specifies whether to use BodyEncoding for URL. Default value: true.

{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}

OssMountDescs

string

No

The OSS mount description. Parameter settings:

  • bucketName: the bucket name.

  • bucketPath: the folder or object that you created in OSS. If the OSS mount folder does not exist, an exception is triggered.

  • mountPath: the container path in Serverless App Engine. If the path already exists, it is an overwrite relationship. If the path does not exist, it is created.

  • readOnly: specifies whether the container path has read-only permission on the mounted folder resources. Valid values:
    • true: read-only permission.

    • false: read and write permission.

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

OssAkId

string

No

The AccessKey ID for OSS read and write operations.

xxxxxx

OssAkSecret

string

No

The AccessKey Secret for OSS read and write operations.

xxxxxx

EnableGreyTagRoute

boolean

No

Specifies whether to enable traffic canary release rules. This rule applies only to applications that use the Spring Cloud or Dubbo framework. Valid values:

  • true: enables canary release rules.

  • false: disables canary release rules.

false

Php

string

No

The PHP version on which the deployment package depends. Not supported for images.

PHP-FPM 7.0

AcrInstanceId

string

No

The Container Registry Enterprise instance ID. This parameter is required when ImageUrl is set to a Container Registry Enterprise instance image.

cri-xxxxxx

AcrAssumeRoleArn

string

No

The ARN of the RAM role required for cross-account image pulling. For more information, see Grant permissions across Alibaba Cloud accounts by using a RAM role.

acs:ram::123456789012****:role/adminrole

ImagePullSecrets

string

No

The corresponding secret ID.

10

AssociateEip

boolean

No

Specifies whether to associate an elastic IP address (EIP). Valid values:

  • true: associates an EIP.

  • false: does not associate an EIP.

true

KafkaConfigs

string

No

The summary of log collection configurations for Kafka. Valid values:

  • kafkaEndpoint: the endpoint of the Kafka API.

  • kafkaInstanceId: the Kafka instance ID.

  • kafkaConfigs: the configuration summary for one or more log entries. For example values and parameter descriptions, see the kafkaConfigs request parameter in this topic.

{"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"}]}

PvtzDiscoverySvc

string

No

Enables K8s Service-based service registration and discovery. Valid values:

  • portProtocols: the port and protocol. Valid port values: [1,65535]. Valid protocol values: TCP and UDP.

  • portAndProtocol: the port and protocol. Valid port values: [1,65535]. Valid protocol values: TCP and UDP. portProtocols is recommended. If portProtocols is set, only portProtocols takes effect.

  • enable: enables K8s Service-based service registration and discovery.

{"portProtocols":[{"port":18012,"protocol":"TCP"}],"portAndProtocol":{"18012":"TCP"},"enable":true}

SwimlanePvtzDiscoverySvc

string

No

Configures K8s Service-based service registration and discovery with end-to-end canary release:

  • enable: specifies whether to enable end-to-end canary release based on K8s Service.
    • true: enabled.

    • false: disabled.

  • namespaceId: the namespace ID.

  • portAndProtocol: the listening port and protocol. Format: {"port:protocol type":"container port"}.

  • portProtocols: defines the service port and protocol.
    • port: the port.

    • protocol: the protocol.

    • targetPort: the container port.

  • pvtzDiscoveryName: the service discovery name.

  • serviceId: the service ID.

  • serviceName: the service name.

{\"enable\":\"false\",\"namespaceId\":\"cn-beijing:test\",\"portAndProtocol\":{\"2000:TCP\":\"18081\"},\"portProtocols\":[{\"port\":2000,\"protocol\":\"TCP\",\"targetPort\":18081}],\"pvtzDiscoveryName\":\"cn-beijing-1421801774382676\",\"serviceId\":\"3513\",\"serviceName\":\"demo-gray.test\"}

MicroRegistration

string

No

Specifies the Nacos registry. Valid values:

  • 0: Serverless App Engine built-in Nacos.

  • 1: self-managed Nacos.

  • 2: Microservices Engine (MSE) commercial edition Nacos.

Note

If you select Serverless App Engine built-in Nacos, you cannot obtain the configuration of the built-in Nacos.

"0"

MicroRegistrationConfig

string

No

The registry configuration, which takes effect only when the registry type is MSE Nacos Enterprise Edition.

{\"instanceId\":\"mse-cn-zvp2bh6h70r\",\"namespace\":\"4c0aa74f-57cb-423c-b6af-5d9f2d0e3dbd\"}

NasConfigs

string

No

The NAS mount configuration. Valid values:

  • mountPath: the container mount path.

  • readOnly: set to false for read and write permission.

  • nasId: the NAS ID.

  • mountDomain: the container mount point address. For more information, see DescribeMountTargets.

  • nasPath: the NAS relative file directory.

[{"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"}]

Python

string

No

The Python environment. PYTHON 3.9.15 is supported.

PYTHON 3.9.15

PythonModules

string

No

The custom installation module dependencies. By default, the dependencies defined in the requirements.txt file in the root folder are installed. If no dependencies are configured or custom packages are needed, you can specify the dependencies to install.

Flask==2.0

Dotnet

string

No

The version of the .NET framework:

  • .NET 3.1

  • .NET 5.0

  • .NET 6.0

  • .NET 7.0

  • .NET 8.0

.NET 3.1

Deploy

string

No

This parameter takes effect only for applications in the stopped state. If you call the DeployApplication operation for a running application, the application is immediately redeployed.

  • true: default value. Deploys immediately, applies the new deployment configuration, and starts instances.

  • false: applies the new deployment configuration only, without starting application instances.

true

PackageType

string

No

The application package type. Valid values:

  • When you deploy with Java, the following types are supported: FatJar, War, and Image.

  • When you deploy with PHP, the following types are supported:
    • PhpZip

    • IMAGE_PHP_5_4

    • IMAGE_PHP_5_4_ALPINE

    • IMAGE_PHP_5_5

    • IMAGE_PHP_5_5_ALPINE

    • IMAGE_PHP_5_6

    • IMAGE_PHP_5_6_ALPINE

    • IMAGE_PHP_7_0

    • IMAGE_PHP_7_0_ALPINE

    • IMAGE_PHP_7_1

    • IMAGE_PHP_7_1_ALPINE

    • IMAGE_PHP_7_2

    • IMAGE_PHP_7_2_ALPINE

    • IMAGE_PHP_7_3

    • IMAGE_PHP_7_3_ALPINE

  • When you deploy with Python, the following types are supported: PythonZip and Image.

FatJar

Cpu

integer

No

The CPU resources required for each instance. Unit: millicores. This parameter cannot be set to 0. Only the following defined specifications are supported:

  • 500

  • 1000

  • 2000

  • 4000

  • 8000

  • 12000

  • 16000

  • 32000

1000

Memory

integer

No

The memory required for each instance. Unit: MB. This parameter cannot be set to 0. The memory has a one-to-one mapping with CPU. Only the following defined specifications are supported:

  • 1024: corresponds to 500 and 1000 millicores of CPU.

  • 2048: corresponds to 500, 1000, and 2000 millicores of CPU.

  • 4096: corresponds to 1000, 2000, and 4000 millicores of CPU.

  • 8192: corresponds to 2000, 4000, and 8000 millicores of CPU.

  • 12288: corresponds to 12000 millicores of CPU.

  • 16384: corresponds to 4000, 8000, and 16000 millicores of CPU.

  • 24576: corresponds to 12000 millicores of CPU.

  • 32768: corresponds to 16000 millicores of CPU.

  • 65536: corresponds to 8000, 16000, and 32000 millicores of CPU.

  • 131072: corresponds to 32000 millicores of CPU.

1024

Replicas

integer

No

The number of instances.

1

SecurityGroupId

string

No

The security group ID.

sg-wz969ngg2e49q5i4****

VSwitchId

string

No

The vSwitch where the network interface controllers (NICs) of the application instance reside. The vSwitch must be in the specified VPC.

vsw-bp12mw1f8k3jgygk9****

ServiceTags

string

No

The canary release tags configured for the application.

{\"alicloud.service.tag\":\"g1\"}

EnableNewArms

boolean

No

Specifies whether to enable the new ARMS feature:

  • true: enabled.

  • false: disabled.

true

EnableCpuBurst

boolean

No

Specifies whether to enable the CPU Burst feature:

  • true: enabled.

  • false: disabled.

true

OidcRoleName

string

No

The RAM role for identity authentication.

Note

Create an OIDC identity provider and an identity provider role in the same region in advance. For more information, see Create an OIDC identity provider and Create a role for SSO identity provider.

sae-test

SidecarContainersConfig

array

No

The sidecar container configuration.

SidecarContainerConfig

No

The sidecar container configuration.

SecretMountDesc

string

No

The Secret mount description. Use a secret created on the namespace secrets page to inject sensitive information into the container. Settings:

  • secretId: the secret instance ID. You can obtain it by calling the ListSecrets operation.

  • key: the key.

Note

You can mount all keys by passing the sae-sys-secret-all parameter.

  • mountPath: the mount path.

[{“secretId":10,”key":"test","mountPath":"/tmp"}]

EnableSidecarResourceIsolated

boolean

No

Specifies whether to enable sidecar resource isolation:

  • true: enables isolation.

  • false: does not enable isolation.

true

CustomImageNetworkType

string

No

The custom image type. If the image is not a custom image, set this parameter to an empty string:

  • internet: public image.

  • intranet: private image.

internet

MicroserviceEngineConfig

string

No

Configures microservice governance.

  • Specifies whether to enable microservice governance (enable):

    • true: enabled.

    • false: disabled.

  • Configures lossless online/offline (mseLosslessRule):

    • delayTime: the delay time.

    • enable: specifies whether to enable the lossless online feature. true indicates enabled, and false indicates disabled.

    • notice: specifies whether to enable the notification feature. true indicates enabled, and false indicates disabled.

    • warmupTime: the warm-up duration for low-traffic scenarios. Unit: seconds.

{"enable": true,"mseLosslessRule": {"delayTime": 0,"enable": false,"notice": false,"warmupTime": 120}}

NewSaeVersion

string

No

The application version:

  • lite: lite edition.

  • std: standard edition.

  • pro: professional edition.

pro

InitContainersConfig

array

No

The init container configuration.

InitContainerConfig

No

The init container configuration.

GpuConfig

string

No

StartupProbe

string

No

Enables the application startup probe.

  • Check succeeded: indicates that the application started successfully. If you configured Liveness and Readiness checks, they are performed after the application starts successfully.

  • Check failed: indicates that the application failed to start. An exception is reported and the application is automatically restarted.

Note

This is the description content.

  • The exec, httpGet, and tcpSocket methods are supported. For specific examples, see the Liveness parameter.

  • Only one method can be selected for health checks.

{"exec":{"command":["sh","-c","cat /home/admin/start.sh"]},"initialDelaySeconds":30,"periodSeconds":30,"timeoutSeconds":2}

EnablePrometheus

boolean

No

Specifies whether to enable custom Prometheus metric collection.

false

Html

string

No

The Nginx version.

  • nginx 1.20

  • nginx 1.22

  • nginx 1.24

  • nginx 1.26

  • nginx 1.28

nginx 1.28

EmptyDirDesc

string

No

The shared ephemeral storage configuration.

[{\"name\":\"workdir\",\"mountPath\":\"/usr/local/tomcat/webapps\"}]

AlbIngressReadinessGate

string

No

The ALB gateway ReadinessGate configuration.

default

MaxSurgeInstances

integer

No

The maximum number of surge instances. Valid values:

If the minimum number of available instances is 100%, the maximum surge cannot be set to 0. If this parameter is set to -1, the system-recommended value of 30% is used, which is 30% of the current number of instances. For example, if the current number of instances is 10, the value is 10 × 30% = 3.

-1

MaxSurgeInstanceRatio

integer

No

The maximum surge instance percentage. Valid values:

If the minimum number of available instances is 100%, the maximum surge cannot be set to 0. If this parameter is set to -1, the system-recommended value of 30% is used, which is 30% of the current number of instances. For example, if the current number of instances is 10, the value is 10 × 30% = 3.

-1

AgentVersion

string

No

The AliyunAgent version.

4.4.2

EnableNamespaceAgentVersion

boolean

No

Specifies whether to reuse the namespace Agent version configuration.

true

SlsLogEnvTags

string

No

sls log tags

LokiConfigs

string

No

Labels

object

No

string

No

Response elements

Element

Type

Description

Example

object

The deployed application information.

RequestId

string

The request ID.

01CF26C7-00A3-4AA6-BA76-7E95F2A3***

Message

string

The additional information. Valid values:

  • If the request is successful, success is returned.

  • If the request fails, a specific error code is returned.

success

TraceId

string

The trace ID, which is used to query the details of a request.

ac1a0b2215622246421415014e****

Data

object

The returned result.

ChangeOrderId

string

The returned change order ID, which is used to query the task execution status.

01db03d3-3ee9-48b3-b3d0-dfce2d88****

AppId

string

The application ID.

7171a6ca-d1cd-4928-8642-7d5cfe69****

IsNeedApproval

boolean

Indicates whether the change published by a Resource Access Management (RAM) user requires approval. Valid values:

  • true: approval is required.

  • false: approval is not required.

true

ErrorCode

string

The error code. Valid values:

  • If the request is successful, the ErrorCode field is not returned.

  • If the request fails, the ErrorCode field is returned. For more information, see the Error codes section in this topic.

Code

string

The API status or POP error code. Valid values:

  • 2xx: success.

  • 3xx: redirection.

  • 4xx: request error.

  • 5xx: server error.

200

Success

boolean

Indicates whether the application deployment is successful. Valid values:

  • true: the deployment is successful.

  • false: the deployment failed.

true

Examples

Success response

JSON format

{
  "RequestId": "01CF26C7-00A3-4AA6-BA76-7E95F2A3***",
  "Message": "success",
  "TraceId": "ac1a0b2215622246421415014e****",
  "Data": {
    "ChangeOrderId": "01db03d3-3ee9-48b3-b3d0-dfce2d88****",
    "AppId": "7171a6ca-d1cd-4928-8642-7d5cfe69****",
    "IsNeedApproval": true
  },
  "ErrorCode": "空",
  "Code": "200",
  "Success": true
}

Error codes

HTTP status code

Error code

Error message

Description

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. The maximum number of Log Service configs is exceeded, please join the DingTalk group 32874633 for technical support.
400 LogService.InternalError An exception occurred while calling Log Service. Please submit a ticket to solve the problem. An exception occurred while calling log service. please join the DingTalk group 32874633 for technical support.
400 LogService.LogDirInvalid The log collection path is invalid. The log collection path is invalid.
400 LogService.NotAvailable Log Service is unavailable. Please activate Log Service first. The log service is not available. Please open the log service first.
400 LogService.ProjectNumQuotaExceed The maximum number of Log Service projects is exceeded. The maximum number of Log Service projects is exceeded, please join the DingTalk group 32874633 for technical support.
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. You can create %s instances for each application. please join the DingTalk group 32874633 for technical support.
400 NoComputeResourceQuota.User.Exceed Your account is limited to create %s instances. Please submit a ticket to raise the quota. Your account is limited to create %s instances. please join the DingTalk group 32874633 for technical support.
400 System.Upgrading The system is being upgraded. Please try again later.
400 VolumnPath.Conflict Conflict between log collection directory and persistent storage directory. Conflict between log collection directory and persistent storage directory.
400 Application.ChangerOrderRunning An application change process is in progress. Please try again later. An application change process is in progress. Please try again later.
400 Application.InvalidStatus The application status is abnormal. Please try again later. 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. This package version is too long.
400 App.Package.Version.Exists The package version of application already exists. The package version of application already exists.
400 Slb.Occupied The SLB instance is occupied. This SLB is occupied.
400 Slb.Tag.Not.Qualified The current SLB instance cannot be reused because it may have been occupied by %s. 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. 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. 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. Secret mount path% s has conflict.
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.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.