Todos los productos
Search
Centro de documentos

:DeployK8sApplication

Última actualización: Sep 03, 2026

Despliega una aplicación en un clúster de Container Service for Kubernetes (ACK) o en un clúster serverless de Kubernetes.

Depuración

OpenAPI Explorer calcula automáticamente el valor de la firma. Para su comodidad, se recomienda llamar a esta operación from OpenAPI Explorer. OpenAPI Explorer genera dinámicamente el código de ejemplo de la operación para diferentes SDK.

Encabezados de solicitud

Esta operación utiliza únicamente encabezados de solicitud comunes. Para obtener más información, consulte el tema sobre parámetros de solicitud comunes.

Sintaxis de solicitud

POST /pop/v5/k8s/acs/k8s_apps HTTP/1.1

Parámetros de solicitud

Parámetro Tipo Posición Obligatorio Ejemplo Descripción
AppId String Query Sí e83acea6-****-47e1-96ae-c0e953772cdc

ID de la aplicación. Puede llamar a la operación ListApplication para consultar el ID de la aplicación.

PreStop String Query No {\"exec\":{\"command\":[\"ls\",\"/\"]}}"

Script previo a la detención. Ejemplo: {"tcpSocket":{"host":"", "port":8080}}.

Para cancele esta configuración, establezca este parámetro en "" o {}. Si no especifique este parámetro, se ignora la configuración.

Envs String Query No [{"name":"x1","value":"y1"},{"name":"x2","valueFrom":{"configMapKeyRef":{"name":"my-config","key":"y2"}}},{"name":"x3","valueFrom":{"secretKeyRef":{"name":"my-secret","key":"y3"}}}]

Variables de entorno utilizadas para desplegar la aplicación. El valor debe ser un arreglo JSON. Puede establecer este parámetro para especificar variables de entorno regulares, variables de entorno de ConfigMap de Kubernetes o variables de entorno de Secret de Kubernetes. Especifique las variables de entorno regulares con el siguiente formato:

{"name":"x", "value": "y"}

Especifique las variables de entorno de ConfigMap de Kubernetes con el siguiente formato para hacer referencia a valores de ConfigMaps:

{ "name": "x2", "valueFrom": { "configMapKeyRef": { "name": "my-config", "key": "y2" } } }

Especifique las variables de entorno de Secret de Kubernetes con el siguiente formato para hacer referencia a valores de Secrets:

{ "name": "x3", "valueFrom": { "secretKeyRef": { "name": "my-secret", "key": "y3" } } }
Nota Para cancele esta configuración, establezca este parámetro en un arreglo JSON vacío, cuyo formato es "".
ImageTag String Query No latest

Etiqueta de la imagen.

BatchWaitTime Integer Query No 0

Intervalo de tiempo mínimo para el despliegue por fases de pods. Para obtener más información, consulte minReadySeconds.

Command String Query No ls

Comando utilizado para iniciar el contenedor.

Nota Para cancele esta configuración, establezca este parámetro en una cadena vacía con el formato "".
PostStart String Query No {\"exec\":{\"command\":[\"ls\",\"/\"]}}"

Script posterior al inicio. Ejemplo: {"exec":{"command":["cat","/etc/group"]}}. Para cancele esta configuración, establezca este parámetro en "" o {}. Si no especifique este parámetro, se ignora la configuración.

Readiness String Query No null

Configuración de la comprobación de preparación del contenedor. Si la comprobación falla, el tráfico que pasa por el servicio de Kubernetes no se transmite al contenedor. Ejemplo: {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}}. Para cancele esta configuración, establezca este parámetro en "" o {}. Si no especifique este parámetro, se ignora la configuración.

Liveness String Query No null

Configuración de la comprobación de actividad del contenedor. Ejemplo: {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}}. Para cancele esta configuración, establezca este parámetro en "" o {}. Si no especifique este parámetro, se ignora la configuración.

Args String Query No ["args1","args2"]

Arreglo de argumentos en el comando de inicio del contenedor. Establezca este parámetro como un arreglo JSON con el formato ["args1","args2"], donde cada clave se establece como una cadena. Para cancele esta configuración, establezca este parámetro en un arreglo JSON vacío con el formato [].

Replicas Integer Query No 1

Número de instancias de la aplicación. Valor mínimo: 0.

Image String Query No registry-vpc.cn-beijing.aliyuncs.com/t****/app:v1

URL absoluta de la imagen. Esta configuración sobrescribe la del parámetro ImageTag.

CpuLimit Integer Query No 1

Número máximo de núcleos de CPU permitidos para cada instancia de la aplicación durante su ejecución. Unidad: núcleo. Un valor de 0 indica que no hay límite.

MemoryLimit Integer Query No 0

Cantidad máxima de memoria permitida para cada instancia de la aplicación durante su ejecución. Unidad: MB. Un valor de 0 indica que no hay límite.

CpuRequest Integer Query No 0

Número de núcleos de CPU solicitados para cada instancia de la aplicación durante su ejecución. Se recomienda establecer este parámetro.

Unidad: núcleo. Un valor de 0 indica que no hay límite.

Nota Debe establecer este parámetro junto con CpuLimit. Asegúrese de que el valor de este parámetro no exceda el de CpuLimit.
MemoryRequest Integer Query No 0

Cantidad de memoria solicitada para cada instancia de la aplicación durante su ejecución. Se recomienda establecer este parámetro. Unidad: MB. Si no desea solicitar una cuota de memoria, establezca este parámetro en 0.

Nota Debe establecer este parámetro junto con MemoryLimit. Asegúrese de que el valor de este parámetro no exceda el de MemoryLimit.
NasId String Query No dfs23****

ID del sistema de archivos NAS de Apsara File Storage montado en el contenedor donde se ejecuta la aplicación. El sistema de archivos NAS debe estar en la misma región que el clúster y tener un destino de montaje available, ya sea general o en el vSwitch de la nube privada virtual (VPC) donde se encuentra la aplicación. Si no especifique este parámetro pero sí especifique MountDescs, se adquiere y monta automáticamente un sistema de archivos NAS en el vSwitch de la VPC.

MountDescs String Query No [{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}]

Descripción de la configuración de montaje de NAS. Establezca este parámetro como una cadena JSON serializada. Ejemplo: [{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}]. El parámetro nasPath especifica la ruta de almacenamiento de archivos y mountPath especifica la ruta para montar el sistema de archivos en el contenedor donde se ejecuta la aplicación.

StorageType String Query No Performance

Tipo de almacenamiento. Solo es compatible con SSD.

LocalVolume String Query No [{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}]

Configuración para montar archivos del host en el contenedor donde se ejecuta la aplicación. Ejemplo: [{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}]. El parámetro nodePath especifica la ruta del host, mountPath especifica la ruta dentro del contenedor y type especifica el tipo de montaje.

PackageUrl String Query No https://e***.oss-cn-beijing.aliyuncs.com/s***-1.0-SNAPSHOT-spring-boot.jar

URL del paquete de despliegue. Este parámetro es obligatorio si utiliza un paquete FatJar o WAR para desplegar la aplicación.

Nota La versión del SDK de Enterprise Distributed Application Service (EDAS) para Java o Python debe ser V2.44.0 o posterior.
PackageVersion String Query No 20200720

Versión del paquete de despliegue. Este parámetro es obligatorio si utiliza un paquete FatJar o WAR para desplegar la aplicación. Debe especificar una versión.

Nota La versión del SDK de EDAS para Java o Python debe ser V2.44.0 o posterior.
JDK String Query No Open JDK 8

Versión del Java Development Kit (JDK) de la que depende el paquete de despliegue de la aplicación. Son compatibles Open JDK 7 y Open JDK 8. Este parámetro no está disponible si despliega aplicaciones mediante imágenes.

WebContainer String Query No apache-tomcat-7.0.91

Versión del contenedor Tomcat de la que depende el paquete de despliegue de la aplicación. Este parámetro aplica a aplicaciones de Spring Cloud y Dubbo desplegadas mediante paquetes WAR. No está disponible si despliega aplicaciones mediante imágenes.

EdasContainerVersion String Query No 3.5.9

Versión de EDAS Container de la que depende el paquete de despliegue de la aplicación. Este parámetro aplica a aplicaciones de High-Speed Service Framework (HSF) desplegadas mediante paquetes WAR. No está disponible si despliega aplicaciones mediante imágenes.

UriEncoding String Query No GBK

Esquema de codificación del identificador uniforme de recursos (URI). Valores válidos: ISO-8859-1, GBK, GB2312 y UTF-8.

Nota Si no especifique este parámetro en la configuración de la aplicación, se aplica el esquema de codificación URI predeterminado del contenedor Tomcat.
UseBodyEncoding Boolean Query No false

Especifica si se usa el esquema de codificación indicado en el cuerpo de la solicitud para los parámetros de consulta del URI.

Nota Si no especifique este parámetro en la configuración de la aplicación, se aplica el valor predeterminado false.
UpdateStrategy String Query No null

Política de despliegue por fases.

  • Ejemplo 1: Una instancia para despliegue canary + Dos lotes subsiguientes + Procesamiento por lotes automático + Intervalo de 1 minuto entre lotes. {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}
  • Ejemplo 2: Una instancia para despliegue canary + Dos lotes subsiguientes + Procesamiento por lotes manual. {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}
  • Ejemplo 3: Dos lotes + Procesamiento por lotes automático + Intervalo de 0 minutos entre lotes. {"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}
McpuRequest Integer Query No 4

Número mínimo de núcleos de CPU requeridos. Unidad: núcleo. Un valor de 0 indica que no hay límite.

Nota Debe establecer este parámetro junto con CpuLimit. Asegúrese de que el valor de este parámetro no exceda el de CpuLimit.
McpuLimit Integer Query No 0

Número máximo de núcleos de CPU permitidos. Unidad: núcleo. Un valor de 0 indica que no hay límite.

VolumesStr String Query No test

Volumen de datos.

PackageVersionId String Query No 2bcc********

ID de versión del paquete de despliegue.

ChangeOrderDesc String Query No Upgrade

Descripción del proceso de cambio.

RuntimeClassName String Query No runc

Tipo de entorno de ejecución del contenedor. Este parámetro aplica únicamente a clústeres que usan contenedores en sandbox.

DeployAcrossZones String Query No true

Especifica si se distribuyen las instancias de la aplicación en varias zonas. Un valor true indica que sí; otros valores indican que no.

BatchTimeout Integer Query No 60

Tiempo de espera para el despliegue por lotes. Unidad: segundos.

EnableAhas Boolean Query No true

Especifica si se habilite el acceso a Application High Availability Service (AHAS).

WebContainerConfig String Query No null

Configuración del contenedor Tomcat. Para cancele esta configuración, establezca este parámetro en "" o "{}". La configuración incluye los siguientes parámetros:

  • useDefaultConfig: especifica si se usa la configuración predeterminada. Un valor true indica que se usa la configuración predeterminada; false indica que se usa la configuración personalizada. Si se utiliza la configuración predeterminada, los siguientes parámetros no surten efecto.
  • contextInputType: tipo de ruta de acceso para la aplicación. Valores válidos:
    • war: La ruta de acceso es el nombre del paquete WAR. No necesita especificar una ruta personalizada.
    • root: La ruta de acceso es /. No necesita especificar una ruta personalizada.
    • custom: Si seleccione esta opción, debe especificar una ruta personalizada para el parámetro contextPath.
  • contextPath: ruta de acceso personalizada para la aplicación. Este parámetro es obligatorio solo cuando establece contextInputType en custom.
  • httpPort: número de puerto, comprendido entre 1024 y 65535. Aunque el contenedor tenga permisos de administrador, se requieren permisos root para operar en puertos menores a 1024. Por lo tanto, introduzca un valor mayor que 1024 dentro del rango válido. Si no especifique este parámetro, se utiliza el puerto predeterminado 8080.
  • maxThreads: número máximo de conexiones en el pool de conexiones. Valor predeterminado: 400.
    Nota Este parámetro afecta significativamente el rendimiento de la aplicación. Se recomienda establecerlo bajo orientación profesional.
  • uriEncoding: esquema de codificación URI en el contenedor Tomcat. Valores válidos: UTF-8, ISO-8859-1, GBK y GB2312. Si no especifique este parámetro, se utiliza el valor predeterminado ISO-8859-1.
  • useBodyEncoding: especifica si se usa el esquema de codificación indicado en el cuerpo de la solicitud para los parámetros de consulta del URI.
  • useAdvancedServerXml: especifica si se usan configuraciones avanzadas para personalizar el archivo server.xml. Si los tipos de parámetros anteriores y los parámetros específicos no satisfacen sus requisitos, puede usar configuraciones avanzadas para personalizar el archivo server.xml de Tomcat.
  • serverXml: contenido del archivo server.xml personalizado mediante configuraciones avanzadas. Este parámetro surte efecto solo cuando establece useAdvancedServerXml en true.
JavaStartUpConfig String Query No null

Configuración de parámetros de inicio de Java para una aplicación Java. Estos parámetros abarcan memoria, aplicación, política de recolección de basura (GC), herramientas, registro y descubrimiento de servicios, y configuraciones personalizadas. Una configuración adecuada ayuda a reducir la sobrecarga de GC, acortar el tiempo de respuesta del servidor y mejorar el rendimiento. Establezca este parámetro como una cadena JSON. En el ejemplo, original indica el valor de configuración y startup indica un parámetro de inicio. El sistema concatena automáticamente todos los valores de inicio como la configuración de parámetros de inicio de Java para la aplicación. Para cancele esta configuración, establezca este parámetro en "" o "{}".

SlsConfigs String Query No [{"logstore":"thisisanotherfilelog","type":"file","logDir":"/var/log/*"},{"logstore":"","type":"stdout","logDir":"stdout.log"},{"logstore":"thisisafilelog","type":"file","logDir":"/tmp/log/*"}]

Configuración del logstore. Para cancele esta configuración, establezca este parámetro en "" o "{}".

  • La configuración incluye los siguientes parámetros:
    • type: tipo de recolección. Establezca este parámetro en file para especificar el tipo de archivo, o en stdout para especificar el tipo de salida estándar.
    • logstore: nombre del logstore. Asegúrese de que sea único en el clúster. El nombre debe cumplir con las siguientes reglas:
      • Solo puede contener letras minúsculas, dígitos, guiones (-) y guiones bajos (_).
      • Debe comenzar y terminar con una letra minúscula o un dígito.
      • Debe tener una longitud de 3 a 63 caracteres. Si deja este parámetro vacío, el sistema genera automáticamente un nombre.
    • logDir: Si se utiliza el tipo de salida estándar, la ruta de recolección es stdout.log. Si se utiliza el tipo de archivo, la ruta de recolección es la ruta del archivo recolectado. Se admiten comodines (*). La ruta de recolección debe coincidir con la siguiente expresión regular: ^/(.+)/(.*)^/$.
DeployAcrossNodes String Query No true

Especifica si se distribuyen las instancias de la aplicación en varios nodos. Un valor true indica que sí; otros valores indican que no.

TrafficControlStrategy String Query No null

Política de ajuste de tráfico para un despliegue canary.

PvcMountDescs String Query No [{"pvcName":"nas-pvc-1","mountPaths":[{"mountPath":"/usr/share/nginx/data"},{"mountPath":"/usr/share/nginx/html","readOnly":true}]}]

Configuración para montar un volumen PersistentVolumeClaim (PVC) de Kubernetes en un directorio especificado en una instancia de contenedor elástico. La configuración incluye los siguientes parámetros:

  • pvcName: nombre del volumen PVC. Asegúrese de que el volumen exista y esté en estado Bound.
  • mountPaths: directorio en el que desea montar el volumen PVC. Puede configurar varios directorios. Puede establecer los siguientes dos parámetros para cada directorio de montaje:
    • mountPath: ruta de montaje. Debe ser una ruta absoluta que comience con una barra diagonal (/) al montar un volumen PVC en una instancia de contenedor elástico.
    • readOnly: modo de montaje. Un valor true indica modo de solo lectura; false indica modo de lectura/escritura. Valor predeterminado: false.
ConfigMountDescs String Query No [{"name":"nginx-config","type":"ConfigMap","mountPath":"/etc/nginx"},{"name":"tls-secret","type":"secret","mountPath":"/etc/ssh"}]

Configuración para montar un ConfigMap o Secret de Kubernetes en un directorio especificado en una instancia de contenedor elástico. La configuración incluye los siguientes parámetros:

  • name: nombre del ConfigMap o Secret de Kubernetes.
  • type: tipo de objeto API que desea montar. Puede montar un ConfigMap o Secret de Kubernetes.
  • mountPath: ruta de montaje. Debe ser una ruta absoluta que comience con una barra diagonal (/) al montar un ConfigMap o Secret de Kubernetes en una instancia de contenedor elástico.
EnvFroms String Query No [{"name":"appname","valueFrom":{"configMapKeyRef":{"name":"appconf","key":"name"}}}]

Variables de entorno de Kubernetes configuradas en modo EnvFrom. Un ConfigMap o Secret especificado se monta en un directorio determinado. Cada clave corresponde a un archivo en dicho directorio, y el contenido del archivo es el valor correspondiente a la clave.

Este parámetro contiene los siguientes elementos:

  • configMapRef: ConfigMap referenciado. Contiene el siguiente parámetro:
    • name: nombre del ConfigMap.
  • secretRef: Secret referenciado. Contiene el siguiente parámetro:
    • name: nombre del Secret.
EmptyDirs String Query No [{"mountPath":"/app-log","subPathExpr":"$(POD_IP)"},{"readOnly":true,"mountPath":"/etc/nginx"}]

Configuración para montar un volumen emptyDir de Kubernetes en un directorio especificado en una instancia de contenedor elástico. La configuración incluye los siguientes parámetros:

  • mountPath: obligatorio. Ruta de montaje en el contenedor.
  • readOnly: opcional. Modo de montaje. Un valor true indica modo de solo lectura; false indica modo de lectura/escritura. Valor predeterminado: false.
  • subPathExpr: opcional. Expresión regular utilizada para coincidir con el subdirectorio.

Parámetros de respuesta

Parámetro

Tipo

Ejemplo

Descripción

ChangeOrderId

String

cd65b247-****-475b-ad4b-7039040d625c

ID del proceso de cambio. Puede llamar a la operación GetChangeOrderInfo para consultar el ID del proceso de cambio.

Code

Integer

200

Código de estado HTTP.

Message

String

success

Mensaje devuelto que indica si la llamada fue exitosa.

RequestId

String

a5281053-08e4-47a5-b2ab-5c0323de*

ID de la solicitud.

Ejemplos

Solicitudes de ejemplo

POST /pop/v5/k8s/acs/k8s_apps HTTP/1.1
Common request headers
{
"AppId": "e83acea6-****-47e1-96ae-c0e953772cdc"
}

Respuestas exitosas de ejemplo

Formato XML

<DeployK8sApplicationResponse>
  <Message>success</Message>
  <RequestId>a5281053-08e4-47a5-b2ab-5c0323de*****</RequestId>
  <ChangeOrderId>cd65b247-****-475b-ad4b-7039040d625c</ChangeOrderId>
  <Code>200</Code>
</DeployK8sApplicationResponse>

Formato JSON

{
    "DeployK8sApplicationResponse": {
        "Message": "success",
        "RequestId": "a5281053-08e4-47a5-b2ab-5c0323de*****",
        "ChangeOrderId": "cd65b247-****-475b-ad4b-7039040d625c",
        "Code": 200
    }
}

Códigos de error

Visite el Centro de errores para ver más códigos de error.

Para obtener una lista de códigos de error, visite el Centro de errores de API.