帮你快速理解、总结文档立即下载

部署容器应用(新)

最近更新时间:2026-08-07 02:06:13
我的收藏

1. 接口描述

接口请求域名: tsf.tencentcloudapi.com 。

部署容器应用-更新

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。

参数名称 必选 类型 描述
Action 是 String 公共参数,本接口取值:DeployContainerApplication。
Version 是 String 公共参数,本接口取值:2018-03-26。
Region 是 String 公共参数,详见产品支持的 地域列表。
ApplicationId 是 String

应用ID


示例值:application-9yn765ea
ObservabilityConfig 否 ContainerGroupObservabilityConfig

可观测配置

ClusterId 否 String

集群ID


示例值:cls-23iwxs1y
GroupId 否 String

部署组ID,分组唯一标识


示例值:group-zvwpn3wy
Envs.N 否 Array of Env

业务容器的环境变量参数

VolumeMountInfoList.N 否 Array of VolumeMountInfo

业务容器的挂载信息

LifeCycleHookList.N 否 Array of LifeCycleHook

业务主容器生命周期钩子列表

AdditionalContainerList.N 否 Array of ContainerInfo

附属容器列表

VolumeInfoList.N 否 Array of VolumeInfo

容器卷信息

ServiceSettingList.N 否 Array of ServiceSetting

Service访问配置列表

Alias 否 String

备注


示例值:consumer app
GroupName 否 String

部署组名称


示例值:consumer-app
Tags.N 否 Array of Tag

标签列表

ContainerKind 否 String

容器类型


示例值:Deployment
Server 否 String

业务容器的 镜像Server ccr.ccs.tencentyun.com


示例值:ccr.ccs.tencentyun.com
RepoName 否 String

业务容器的镜像名


示例值:tsf_700001025656/test-sts-1
RepoType 否 String

仓库类型


示例值:personal
TcrRepoInfo 否 TcrRepoInfo

TCR仓库信息

SecretName 否 String

容器访问凭证名称


示例值:qcloudregistry
TagName 否 String

业务容器的镜像版本号


示例值:v1
HealthCheckSettings 否 HealthCheckSettings

健康检查

CpuRequest 否 String

业务容器的 cpu request


示例值:0.1
CpuLimit 否 String

业务容器的 cpu limit


示例值:0.5
MemRequest 否 String

业务容器的 mem request


示例值:1024
MemLimit 否 String

业务容器的 mem limit


示例值:200
JvmOpts 否 String

业务容器的 jvm 参数


示例值:-Xms128m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
InitContainerEnable 否 Boolean

是否为初始化容器 业务主容器不能为初始化容


示例值:false
PrivilegeContainerEnable 否 Boolean

业务主容器是否为特权容器


示例值:false
RunCommand 否 String

业务主容器运行命令(转base64)


示例值:/bin/sh
RunArg 否 String

业务主容器运行参数(转base64)


示例值:-c\nwhile true; do echo hello; sleep 10; done
InstanceNum 否 Integer

实例数量


示例值:1
SchedulingStrategy 否 SchedulingStrategy

调度策略

RestartPolicy 否 String

重启策略


示例值:Always
ServiceSpecEncode 否 String

服务治理配置


示例值:NULL
IstioMemRequest 否 String

istio容器的 mem Request


示例值:200
IstioCpuRequest 否 String

istio容器的 cpu Request


示例值:0.4
IstioMemLimit 否 String

istio容器的 mem Limit


示例值:1024
IstioCpuLimit 否 String

istio容器的 cpu Limit


示例值:1
ServiceGovernanceConfig 否 ContainerGroupServiceGovernanceConfig

服务治理配置

AgentMemRequest 否 String

agent容器的 mem Request


示例值:200
AgentCpuRequest 否 String

agent容器的 cpu Request


示例值:0.1
AgentMemLimit 否 String

agent容器的 mem Limit


示例值:200
AgentCpuLimit 否 String

agent容器的 cpu Limit


示例值:1
UpdateType 否 Integer

发布策略(0表示快速更新,1表示滚动更新。默认值为0)


示例值:0
UpdateIvl 否 Integer

更新间隔,单位秒


示例值:10
MaxSurge 否 String

对应更新策略和策略配置参数


示例值:25%
MaxUnavailable 否 String

对应更新策略和策略配置参数


示例值:0
WarmupSetting 否 WarmupSetting

预热参数配置

ConfigTemplateId 否 String

配置模版ID


示例值:template-id
ConfigTemplateVersion 否 Integer

配置模版Version


示例值:0
VolumeClean 否 Boolean

是否清除数据卷信息


示例值:false
NamespaceId 否 String

命名空间Id


示例值:namespace-xx
DeployAgent 否 Boolean

是否部署agent容器


示例值:true
AgentProfileList.N 否 Array of AgentProfile

javaagent信息: SERVICE_AGENT/OT_AGENT

ServiceClean 否 Boolean

是否清除Service信息


示例值:false
EnvClean 否 Boolean

是否清除Env信息


示例值:false
DeployDesc 否 String

本次部署的描述信息


示例值:update image to v1
K8sNamespaceName 否 String

k8s命名空间名称


示例值:consumer
StaticIpEnabled 否 Boolean

是否启用静态IP


示例值:false
PodManagementPolicyType 否 String

启动策略[OrderedReady/Parallel]


示例值:OrderedReady
Partition 否 Integer

滚动更新分区序号


示例值:0
IncrementalDeployment 否 Boolean

是否是增量部署,增量部署只运行增量覆盖一级参数,不支持对一级参数中的子参数进行增量更新,例如更新VolumeMountInfoList时必须传入VolumeMountInfoList更新后的全量参数


示例值:false
DoNotStart 否 Boolean

是否不立即启动


示例值:false
ImagePullSecretList.N 否 Array of String

镜像Secret列表


示例值:["secret"]
MeshSidecarVersion 否 String

用于区分使用sidecar的版本是稳定版还是发行版

枚举值:

  • stable: sidecar稳定版
  • release: sidecar发行版

示例值:release

3. 输出参数

参数名称 类型 描述
Result DeployContainerApplicationResp

部署容器应用是否成功。
true:成功。
false:失败。


注意:此字段可能返回 null,表示取不到有效值。
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 部署容器应用

输入示例

POST / HTTP/1.1
Host: tsf.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: DeployContainerGroup
<公共请求参数>

{
    "ApplicationId": "application-6ym5kebd",
    "GroupName": "test-group-1",
    "ClusterId": "cls-23iwxs1l",
    "Alias": "app remark",
    "NamespaceId": "namespace-by8mg4xs",
    "Tags": [
        {
            "TagKey": "tke-clusterId",
            "TagValue": "cls-23iwxs1l"
        }
    ],
    "ContainerKind": "Deployment",
    "InstanceNum": 1,
    "SchedulingStrategy": {
        "Type": "NONE",
        "NodeScheduleStrategyType": "Default",
        "AvailableZoneScatterScheduleType": "None",
        "PodScheduleStrategyType": "None",
        "TolerateScheduleType": "None"
    },
    "ServiceSettingList": [
        {
            "LoadBalancingType": "Intranet",
            "ExternalTrafficStrategy": "Local",
            "ExternalTrafficPolicy": "Local",
            "ServiceName": "test-svc-1",
            "HeadlessService": true,
            "AccessType": 1,
            "SubnetId": "subnet-d15zonly",
            "OpenSessionAffinity": false,
            "SessionAffinityTimeoutSeconds": 10800,
            "ProtocolPorts": [
                {
                    "Protocol": "TCP",
                    "TargetPort": 80,
                    "Port": 80,
                    "Name": "svc-1"
                }
            ]
        }
    ],
    "ServiceClean": false,
    "EnvClean": true,
    "RestartPolicy": "Always",
    "CpuRequest": "0.25",
    "MemRequest": "120",
    "MemLimit": "1280",
    "CpuLimit": "0.5",
    "Server": "ccr.ccs.tencentyun.com",
    "RepoName": "tsf_700001025656/test-sts-1",
    "TagName": "nginx-v1",
    "Envs": [
        {
            "ValueFrom": {
                "FieldRef": {
                    "FieldPath": "metadata.name"
                }
            },
            "Name": "env1"
        },
        {
            "ValueFrom": {
                "ResourceFieldRef": {
                    "Resource": "limits.memory"
                }
            },
            "Name": "env2"
        },
        {
            "ValueFrom": {
                "ConfigMapKeyRef": {
                    "Name": "kube-root-ca.crt",
                    "Key": "ca.crt"
                }
            },
            "Name": "env3"
        },
        {
            "ValueFrom": {
                "SecretKeyRef": {
                    "Name": "qcloudregistrykey",
                    "Key": ".dockercfg"
                }
            },
            "Name": "env4"
        }
    ],
    "RepoType": "personal",
    "PrivilegeContainerEnable": true,
    "RunCommand": "/bin/sh",
    "RunArg": "-c\nwhile true; do echo hello; sleep 10; done",
    "InitContainerEnable": false,
    "LifeCycleHookList": [
        {
            "HookType": "postStart",
            "ExecMode": "httpGet",
            "HttpGetOption": {
                "Scheme": "HTTP",
                "Host": "host.com",
                "Path": "/tmp",
                "Port": "7998"
            }
        },
        {
            "HookType": "preStop",
            "ExecMode": "none",
            "HttpGetOption": {
                "Scheme": "HTTP"
            }
        }
    ],
    "HealthCheckSettings": {
        "LivenessProbe": {
            "Type": "K8S_NATIVE",
            "ActionType": "HTTP",
            "InitialDelaySeconds": 0,
            "TimeoutSeconds": 3,
            "PeriodSeconds": 30,
            "SuccessThreshold": 1,
            "FailureThreshold": 3,
            "Port": 30000,
            "Scheme": "HTTP",
            "Path": "/test"
        },
        "ReadinessProbe": {
            "Type": "TSF_DEFAULT"
        }
    },
    "JvmOpts": "-Xms128m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m",
    "VolumeMountInfoList": [
        {
            "VolumeMountPath": "/tmp",
            "VolumeMountSubPath": "/test",
            "ReadOrWrite": "1",
            "VolumeMountName": "test-data-emptydir"
        }
    ],
    "AgentCpuRequest": "0.1",
    "AgentCpuLimit": "0.2",
    "AgentMemRequest": "125",
    "AgentMemLimit": "400",
    "DeployAgent": true,
    "AdditionalContainerList": [
        {
            "CpuRequest": "0.25",
            "MemRequest": "120",
            "MemLimit": "1280",
            "CpuLimit": "0.5",
            "Server": "ccr.ccs.tencentyun.com",
            "RepoName": "tsf_700001025656/test-ns",
            "TagName": "polaris-1",
            "Envs": [],
            "RepoType": "personal",
            "PrivilegeContainerEnable": false,
            "InitContainerEnable": false,
            "LifeCycleHookList": [
                {
                    "HookType": "postStart",
                    "ExecMode": "none",
                    "HttpGetOption": {
                        "Scheme": "HTTP"
                    }
                },
                {
                    "HookType": "preStop",
                    "ExecMode": "none",
                    "HttpGetOption": {
                        "Scheme": "HTTP"
                    }
                }
            ],
            "HealthCheckSettings": {},
            "JvmOpts": "-Xms128m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m",
            "VolumeMountInfoList": []
        }
    ],
    "VolumeInfoList": [
        {
            "VolumeName": "test-data-emptydir",
            "VolumeType": "emptyDir",
            "ConfigMapOptions": [],
            "EmptyDirOption": {
                "StorageCapacity": 1,
                "StorageUnit": "Gi",
                "EnableMemory": true
            }
        }
    ],
    "VolumeClean": true,
    "ServiceGovernanceConfig": {
        "GovernanceType": "SHARE",
        "EnableGovernance": true
    },
    "ObservabilityConfig": {
        "BusinessLogConfigIdList": [
            "apm-busi-log-cfg-lba2povk",
            "apm-busi-log-cfg-2vz5nm9v"
        ],
        "BusinessLogDeliveryConfigIdList": []
    },
    "WarmupSetting": {
        "Enabled": true,
        "WarmupTime": 60,
        "Curvature": 2,
        "EnabledProtection": true
    },
    "AgentProfileList": [
        {
            "AgentType": "OT_AGENT",
            "AgentVersion": ""
        }
    ],
    "UpdateType": 1,
    "UpdateIvl": 10,
    "MaxSurge": "25%",
    "MaxUnavailable": "0"
}

输出示例

{
    "Response": {
        "Result": {
            "GroupId": "group-oydjq4my",
            "TaskId": "task-2.0-gvko6ona"
        },
        "RequestId": "a187dea0-773a-4076-a06b-ac6482f6f679"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。

错误码 描述
FailedOperation.ClusterQueryFailed 查询集群失败。
FailedOperation.ContainergroupKuberneteApiInvokeError 调用 kube-api-server 失败。
FailedOperation.ContainergroupKubernetesApiInvokeError 调用 kube-api-server 失败。
FailedOperation.ContainergroupKubernetesConnectError 调用 kube-api-server 失败。
FailedOperation.TokenQueryFailed TOKEN查询失败。
FailedOperation.TsfPrivilegeError TSF权限模块异常,请联系系统管理员。
FailedOperation.UnhandledException 模块未处理异常。
InternalError.ContainergroupKuberneteApiInvokeError 访问TKE服务失败。
InternalError.ContainergroupKuberneteConnectError 连接TKE服务失败。
InternalError.ContainergroupSqlFailed 容器应用SQL错误。
InternalError.UnhandledException 模块未处理异常。
InvalidParameter.BadRequest 示例:serviceId模块接口action请求不正确(400 BAD REQUEST)。
InvalidParameter.KubernetesParamError 参数错误。
InvalidParameter.ParamError 参数错误。
InvalidParameterValue.ContainergroupAccesstypeNull 服务访问方式不能为空。
InvalidParameterValue.ContainergroupCpulimitOver 集群 CPU 资源不足。
InvalidParameterValue.ContainergroupEnvValueBothSet 容器Env的Value和ValueFrom不能同时使用
InvalidParameterValue.ContainergroupEnvValueNotSet 容器 Env 的 Value 和 ValueFrom 至少要有一个。
InvalidParameterValue.ContainergroupGroupidNull 部署组ID不能为空。
InvalidParameterValue.ContainergroupInvalidCpuInfo CPU limit 和 request 不能同时为空。
InvalidParameterValue.ContainergroupInvalidMemInfo 内存 limit 和 request 不能同时为空。
InvalidParameterValue.ContainergroupMemlimitOver 集群内存资源不足。
InvalidParameterValue.ContainergroupNodePortInvalid 主机端口值非法。
InvalidParameterValue.ContainergroupPortNull 服务端口不能为空。
InvalidParameterValue.ContainergroupPortsRepeat 服务端口不允许重复映射。
InvalidParameterValue.ContainergroupProtocolInvalid 协议值非法,限定:TCP/UDP。
InvalidParameterValue.ContainergroupProtocolMixError 公网访问方式下,协议需要一致。
InvalidParameterValue.ContainergroupProtocolNull 协议不能为空。
InvalidParameterValue.ContainergroupProtocolPortsNull 协议端口不能为空。
InvalidParameterValue.ContainergroupReponameInvalid 镜像仓库名与应用名不匹配。
InvalidParameterValue.ContainergroupResourceAgentValueInvalid 示例:agent 容器资源值非法 , cpu。
InvalidParameterValue.ContainergroupServiceNameValidError service名称校验失败。
InvalidParameterValue.ContainergroupTargetPortsRepeat 容器端口不允许重复映射。
InvalidParameterValue.ContainergroupTargetportNull 容器端口不能为空。
InvalidParameterValue.ContainergroupUpdateivlInvalid 更新间隔不能为空或者数值非法。
InvalidParameterValue.ContainergroupUpdatetypeInvalid updateType参数不合法,值必须为0、1。
InvalidParameterValue.ContainergroupYamlUserContainerNotFound 找不到业务容器。
InvalidParameterValue.ImagerepoRepoNameNull 镜像仓库名不能为空。
InvalidParameterValue.ImagerepoReponameInvalid 镜像仓库名不合法,示例:tsf-repo/nginx。
InvalidParameterValue.ImagerepoTagnameNull imageTags不能为空。
InvalidParameterValue.WrongDontStartValue 仅有停止状态下的部署组才可以不启动。
MissingParameter.SystemParameterRequired 示例:未指定language。
ResourceNotFound.ClusterNotExist 无法获取命名空间所属集群。
ResourceNotFound.ContainergroupGroupNotFound 无法找到该部署组。
ResourceNotFound.MicroserviceOffline 目标微服务已离线。
UnauthorizedOperation.NoPrivilege 用户无权限访问该接口。