部署容器应用

最近更新时间:2024-03-12 01:59:58

我的收藏

1. 接口描述

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

部署容器应用-更新

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

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

2. 输入参数

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

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:DeployContainerGroup。
Version String 公共参数,本接口取值:2018-03-26。
Region String 公共参数,详见产品支持的 地域列表
GroupId String 部署组ID,分组唯一标识
示例值:group-xxxxxxx
TagName String 镜像版本名称,如v1
示例值:xxxx
InstanceNum Integer 实例数量
示例值:1
Server String 镜像server
示例值:ccr.ccs.tencentyun.com
Reponame String 旧版镜像名,如/tsf/nginx
CpuLimit String 业务容器最大的 CPU 核数,对应 K8S 的 limit;不填时默认为 request 的 2 倍
MemLimit String 业务容器最大的内存 MiB 数,对应 K8S 的 limit;不填时默认为 request 的 2 倍
JvmOpts String jvm参数
CpuRequest String 业务容器分配的 CPU 核数,对应 K8S 的 request,默认0.25
示例值:0.54
MemRequest String 业务容器分配的内存 MiB 数,对应 K8S 的 request,默认640 MiB
示例值:1024
DoNotStart Boolean 是否不立即启动
示例值:false
RepoName String (优先使用)新版镜像名,如/tsf/nginx
示例值:tsf_10000617xxxx/test
UpdateType Integer 更新方式:0:快速更新 1:滚动更新
示例值:1
UpdateIvl Integer 滚动更新必填,更新间隔
示例值:10
AgentCpuRequest String agent 容器分配的 CPU 核数,对应 K8S 的 request
AgentCpuLimit String agent 容器最大的 CPU 核数,对应 K8S 的 limit
AgentMemRequest String agent 容器分配的内存 MiB 数,对应 K8S 的 request
AgentMemLimit String agent 容器最大的内存 MiB 数,对应 K8S 的 limit
IstioCpuRequest String istioproxy 容器分配的 CPU 核数,对应 K8S 的 request
IstioCpuLimit String istioproxy 容器最大的 CPU 核数,对应 K8S 的 limit
IstioMemRequest String istioproxy 容器分配的内存 MiB 数,对应 K8S 的 request
IstioMemLimit String istioproxy 容器最大的内存 MiB 数,对应 K8S 的 limit
MaxSurge String kubernetes滚动更新策略的MaxSurge参数
MaxUnavailable String kubernetes滚动更新策略的MaxUnavailable参数
HealthCheckSettings HealthCheckSettings 健康检查配置信息,若不指定该参数,则默认不设置健康检查。
Envs.N Array of Env 部署组应用运行的环境变量。若不指定该参数,则默认不设置额外的环境变量。
ServiceSetting ServiceSetting 容器部署组的网络设置。
DeployAgent Boolean 是否部署 agent 容器。若不指定该参数,则默认不部署 agent 容器。
SchedulingStrategy SchedulingStrategy 节点调度策略。若不指定该参数,则默认不使用节点调度策略。
IncrementalDeployment Boolean 是否进行增量部署,默认为false,全量更新
RepoType String tcr或者不填
VolumeInfos VolumeInfo 数据卷信息-废弃,请用VolumeInfoList参数
VolumeMountInfos VolumeMountInfo 数据卷挂载点信息-废弃,请用VolumeMountInfoList参数
VolumeInfoList.N Array of VolumeInfo 数据卷信息,list
VolumeMountInfoList.N Array of VolumeMountInfo 数据卷挂载点信息,list
VolumeClean Boolean 是否清除数据卷信息,默认false
示例值:false
AgentProfileList.N Array of AgentProfile javaagent信息: SERVICE_AGENT/OT_AGENT
WarmupSetting WarmupSetting 预热配置信息

3. 输出参数

参数名称 类型 描述
Result Boolean 部署容器应用是否成功。
true:成功。
false:失败。
注意:此字段可能返回 null,表示取不到有效值。
示例值:1
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 部署容器应用

输入示例

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

{
    "DoNotStart": "false",
    "MemRequest": "1024",
    "UpdateType": "1",
    "Server": "ccr.ccs.tencentyun.com",
    "InstanceNum": "1",
    "RepoName": "tsf_10000617xxxx/test",
    "TagName": "xxxx",
    "CpuRequest": "0.54",
    "JvmOpts": "-Xms128m-Xmx512m-XX:MetaspaceSize=128m-XX:MaxMetaspaceSize=512m",
    "UpdateIvl": "10",
    "GroupId": "group-xxxxxxx"
}

输出示例

{
    "Response": {
        "RequestId": "b481cffd-6b00-463f-a1ae-7afe5fd5fa2e",
        "Result": true
    }
}

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 [%s]模块未处理异常。。
InvalidParameter.BadRequest [%s]模块接口[%s]请求不正确(400 BAD REQUEST)。。
InvalidParameter.KubernetesParamError 参数错误。
InvalidParameter.ParamError 参数错误。
InvalidParameterValue.ContainergroupAccesstypeNull 服务访问方式不能为空。
InvalidParameterValue.ContainergroupCpulimitOver 集群 CPU 资源不足。
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 容器资源值非法 , %s。
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 未指定%s。。
ResourceNotFound.ClusterNotExist 无法获取命名空间所属集群。
ResourceNotFound.ContainergroupGroupNotFound 无法找到该部署组。
ResourceNotFound.MicroserviceOffline 目标微服务已离线[%s]。。
UnauthorizedOperation.NoPrivilege 用户无权限访问该接口。。