1. 接口描述
接口请求域名: tem.tencentcloudapi.com 。
应用部署
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:DeployApplication。 |
Version | 是 | String | 公共参数,本接口取值:2021-07-01。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
ApplicationId | 是 | String | 应用ID 示例值:1 |
InitPodNum | 是 | Integer | 初始化 pod 数 示例值:1 |
CpuSpec | 是 | Float | cpu规格 示例值:1 |
MemorySpec | 是 | Float | 内存规格 示例值:1 |
EnvironmentId | 是 | String | 环境ID 示例值:1 |
ImgRepo | 否 | String | 镜像仓库 示例值:1 |
VersionDesc | 否 | String | 版本描述信息 示例值:1 |
JvmOpts | 否 | String | 启动参数 示例值:1 |
EsInfo | 否 | EsInfo | 弹性伸缩配置(已废弃,请使用HorizontalAutoscaler设置弹性策略) 示例值:1 |
EnvConf.N | 否 | Array of Pair | 环境变量配置 示例值:1 |
LogConfs.N | 否 | Array of String | 日志配置 示例值:1 |
StorageConfs.N | 否 | Array of StorageConf | 数据卷配置 示例值:1 |
StorageMountConfs.N | 否 | Array of StorageMountConf | 数据卷挂载配置 示例值:1 |
DeployMode | 否 | String | 部署类型。 - JAR:通过 jar 包部署 - WAR:通过 war 包部署 - IMAGE:通过镜像部署 示例值:1 |
DeployVersion | 否 | String | 部署类型为 IMAGE 时,该参数表示镜像 tag。 部署类型为 JAR/WAR 时,该参数表示包版本号。 示例值:1 |
PkgName | 否 | String | 传入内容为 /jar包名字 的形式。也就是在 jar包名字前增加一个/。 如上传的 jar 包名字为 demo-1.0.0.jar,那么这里传入内容为:/demo-1.0.0.jar 注:jar 包需要通过 tem 页面上传过,tem 后端才能拉到该 jar 包。 示例值:/demo-1.0.0.jar |
JdkVersion | 否 | String | JDK 版本。 - KONA:8:使用 kona jdk 8。 - OPEN:8:使用 open jdk 8。 - KONA:11:使用 kona jdk 11。 - OPEN:11:使用 open jdk 11。 示例值:1 |
SecurityGroupIds.N | 否 | Array of String | 安全组ID s 示例值:1 |
LogOutputConf | 否 | LogOutputConf | 日志输出配置 示例值:1 |
SourceChannel | 否 | Integer | 来源渠道 示例值:0 |
Description | 否 | String | 版本描述 示例值:1 |
ImageCommand | 否 | String | 镜像命令 示例值:cd |
ImageArgs.N | 否 | Array of String | 镜像命令参数 示例值:/home |
UseRegistryDefaultConfig | 否 | Boolean | 是否添加默认注册中心配置 示例值:true |
SettingConfs.N | 否 | Array of MountedSettingConf | 挂载配置信息 示例值:[] |
Service | 否 | EksService | 应用访问设置 示例值:1 |
VersionId | 否 | String | 要回滚到的历史版本id 示例值:version-123 |
PostStart | 否 | String | 启动后执行的脚本 示例值:1 |
PreStop | 否 | String | 停止前执行的脚本 示例值:1 |
Liveness | 否 | HealthCheckConfig | 存活探针配置 示例值:1 |
Readiness | 否 | HealthCheckConfig | 就绪探针配置 示例值:1 |
DeployStrategyConf | 否 | DeployStrategyConf | 分批发布策略配置 示例值:1 |
HorizontalAutoscaler.N | 否 | Array of HorizontalAutoscaler | 弹性策略(已弃用,请使用弹性伸缩策略组合相关接口) 示例值:1 |
CronHorizontalAutoscaler.N | 否 | Array of CronHorizontalAutoscaler | 定时弹性策略(已弃用,请使用弹性伸缩策略组合相关接口) 示例值:1 |
LogEnable | 否 | Integer | 是否启用log,1为启用,0为不启用 示例值:1 |
ConfEdited | 否 | Boolean | (除开镜像配置)配置是否修改 示例值:true |
SpeedUp | 否 | Boolean | 是否开启应用加速 示例值:true |
StartupProbe | 否 | HealthCheckConfig | 启动探针配置 示例值:1 |
OsFlavour | 否 | String | 操作系统版本; 当选择openjdk时,可选参数: - ALPINE - CENTOS 当选择konajdk时,可选参数: - ALPINE - TENCENTOS 示例值:1 |
EnablePrometheusConf | 否 | EnablePrometheusConf | metrics业务指标监控配置 示例值:{} |
EnableTracing | 否 | Integer | 1:开始自动apm采集(skywalking); 0:关闭apm采集; 示例值:0 |
EnableMetrics | 否 | Integer | 1:开始自动metrics采集(open-telemetry); 0:关闭metrics采集; 示例值:0 |
TcrInstanceId | 否 | String | 镜像部署时,选择的tcr实例id 示例值:tcr-123 |
RepoServer | 否 | String | 镜像部署时,选择的镜像服务器地址 示例值:ccr.ccs.tencentcryun.com |
RepoType | 否 | Integer | 镜像部署时,仓库类型:0:个人仓库;1:企业版;2:公共仓库;3:tem托管仓库;4:demo仓库 示例值:0 |
PostStartEncoded | 否 | String | 启动后执行的脚本,base64 编码 |
PreStopEncoded | 否 | String | 停止前执行的脚本,base64 编码 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
Result | String | 版本ID(前端可忽略) 示例值:1 |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 应用部署
应用部署
输入示例
POST / HTTP/1.1
Host: tem.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: DeployApplication
<公共请求参数>
{
"ApplicationId": "abc",
"ImgRepo": "abc",
"VersionDesc": "abc",
"JvmOpts": "abc",
"InitPodNum": 1,
"EsInfo": {
"MinAliveInstances": 0,
"MaxAliveInstances": 0,
"EsStrategy": 0,
"VersionId": "abc",
"Threshold": 1
},
"EnvConf": [
{
"Key": "abc",
"Value": "abc",
"Type": "abc",
"Config": "abc",
"Secret": "abc"
}
],
"LogConfs": [
"abc"
],
"StorageConfs": [
{
"StorageVolName": "abc",
"StorageVolPath": "abc",
"StorageVolIp": "abc"
}
],
"StorageMountConfs": [
{
"VolumeName": "abc",
"MountPath": "abc"
}
],
"DeployMode": "abc",
"DeployVersion": "abc",
"PkgName": "abc",
"CpuSpec": 0,
"MemorySpec": 0,
"JdkVersion": "abc",
"SecurityGroupIds": [
"abc"
],
"LogOutputConf": {
"OutputType": "abc",
"ClsLogsetName": "abc",
"ClsLogTopicId": "abc",
"ClsLogsetId": "abc",
"ClsLogTopicName": "abc"
},
"SourceChannel": 0,
"Description": "abc",
"EnvironmentId": "abc",
"ImageCommand": "abc",
"ImageArgs": [
"abc"
],
"UseRegistryDefaultConfig": true,
"SettingConfs": [
{
"ConfigDataName": "abc",
"MountedPath": "abc",
"Data": [
{
"Key": "abc",
"Value": "abc",
"Type": "abc",
"Config": "abc",
"Secret": "abc"
}
],
"SecretDataName": "abc"
}
],
"Service": {
"Name": "abc",
"Ports": [
0
],
"Yaml": "abc",
"ApplicationName": "abc",
"VersionName": "abc",
"ClusterIp": [
"abc"
],
"ExternalIp": "abc",
"Type": "abc",
"SubnetId": "abc",
"LoadBalanceId": "abc",
"PortMappings": [
{
"Port": 0,
"TargetPort": 0,
"Protocol": "abc",
"ServiceName": "abc"
}
],
"ServicePortMappingList": [
{
"Type": "abc",
"ServiceName": "abc",
"ClusterIp": "abc",
"ExternalIp": "abc",
"SubnetId": "abc",
"VpcId": "abc",
"LoadBalanceId": "abc",
"Yaml": "abc",
"Ports": [
0
],
"PortMappingItemList": [
{
"Port": 0,
"TargetPort": 0,
"Protocol": "abc"
}
],
"ExternalDomain": "abc"
}
],
"FlushAll": true,
"EnableRegistryNextDeploy": 0,
"ApplicationId": "abc",
"AllIpDone": true,
"ExternalDomain": "abc"
},
"VersionId": "abc",
"PostStart": "abc",
"PreStop": "abc",
"Liveness": {
"Type": "abc",
"Protocol": "abc",
"Path": "abc",
"Exec": "abc",
"Port": 0,
"InitialDelaySeconds": 0,
"TimeoutSeconds": 0,
"PeriodSeconds": 0
},
"Readiness": {
"Type": "abc",
"Protocol": "abc",
"Path": "abc",
"Exec": "abc",
"Port": 0,
"InitialDelaySeconds": 0,
"TimeoutSeconds": 0,
"PeriodSeconds": 0
},
"DeployStrategyConf": {
"TotalBatchCount": 0,
"BetaBatchNum": 0,
"DeployStrategyType": 0,
"BatchInterval": 0,
"MinAvailable": 0,
"Force": true
},
"HorizontalAutoscaler": [
{
"MinReplicas": 0,
"MaxReplicas": 0,
"Metrics": "abc",
"Threshold": 0,
"Enabled": true,
"DoubleThreshold": 0
}
],
"CronHorizontalAutoscaler": [
{
"Name": "abc",
"Period": "abc",
"Schedules": [
{
"StartAt": "abc",
"TargetReplicas": 0
}
],
"Enabled": true,
"Priority": 0
}
],
"LogEnable": 0,
"ConfEdited": true,
"SpeedUp": true,
"StartupProbe": {
"Type": "abc",
"Protocol": "abc",
"Path": "abc",
"Exec": "abc",
"Port": 0,
"InitialDelaySeconds": 0,
"TimeoutSeconds": 0,
"PeriodSeconds": 0
},
"OsFlavour": "abc",
"EnablePrometheusConf": {
"Port": 0,
"Path": "abc"
},
"EnableTracing": 0,
"EnableMetrics": 0,
"TcrInstanceId": "abc",
"RepoServer": "abc",
"RepoType": 0,
"PostStartEncoded": "abc",
"PreStopEncoded": "abc"
}
输出示例
{
"Response": {
"RequestId": "81f74023-563c-437d-abf7-8139449ef178",
"Result": "version-xxx"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
FailedOperation.ActionReadTimeout | 请求响应超时。 |
FailedOperation.CreateServiceError | 创建服务失败。 |
FailedOperation.DefaultInternalError | 服务器繁忙,请稍后再试。 |
FailedOperation.DescribeServiceListError | 查询service列表失败。 |
InternalError.ActionReadTimeout | 请求响应超时。 |
InternalError.CreateApmResourceError | 创建apm资源失败。 |
InternalError.CreateServiceError | 创建服务失败。 |
InternalError.DefaultInternalError | 服务器繁忙,请稍后再试。 |
InternalError.DeployVersionError | 版本部署调用失败。 |
InvalidParameterValue.ApmNotBind | APM 没有与当前环境绑定。 |
InvalidParameterValue.AutoScalerLargerThanOne | 只支持绑定一种弹性伸缩。 |
InvalidParameterValue.CannotOverWriteOtherApplicationService | 不能覆盖其他应用的访问方式。 |
InvalidParameterValue.InvalidDeployVersion | 版本号格式非法。 |
InvalidParameterValue.InvalidEnvName | 环境变量名非法,要求有由字母、数字,".","_" 和 "-" 组成,不能由数字开头。 |
InvalidParameterValue.InvalidEnvValue | 环境变量长度不能超过1000。 |
InvalidParameterValue.InvalidMountPath | 挂载路径不合法,不能为 /app。 |
InvalidParameterValue.InvalidTenantInfo | 无法识别租户信息。 |
InvalidParameterValue.JdkVersionRequired | JDK 版本不能为空。 |
InvalidParameterValue.MustProvidePortMappingRules | 必须提供PortMapping规则。 |
InvalidParameterValue.NamespaceNotBelongToAppid | 命名空间不属于用户。 |
InvalidParameterValue.OsNotSupport | 操作系统不支持。 |
InvalidParameterValue.PostStartNotValid | post start 不合法。 |
InvalidParameterValue.PreStopNotValid | pre stop 不合法。 |
InvalidParameterValue.RegistryNotBind | 注册中心没有与当前环境绑定。 |
InvalidParameterValue.ServiceNameDuplicateError | 应用名已存在。 |
InvalidParameterValue.ServiceNotBelongToAppid | 应用不属于此账户。 |
InvalidParameterValue.ServicePodReachMaximum | 实例创建失败,达到上限。 |
InvalidParameterValue.ServiceUseReserveSuffix | 服务名使用了保留后缀。 |
InvalidParameterValue.TemIdInvalid | 不是合法的TEM ID。 |
InvalidParameterValue.TraitsTracingNotSupported | 非 JAVA 应用不支持链路追踪特性。 |
InvalidParameterValue.VersionLengthLimit | version 不能超过128位。 |
InvalidParameterValue.VersionLowerCase | 版本必须小写。 |
MissingParameter.DeployModeNull | 部署方式不能为空。 |
MissingParameter.DeployVersionNull | 部署版本不能为空。 |
MissingParameter.ImgRepoNull | 镜像仓库不能为空。 |
MissingParameter.LogsetOrTopicNull | logset 和 topic 不能为空。 |
MissingParameter.PkgNameNull | 包名不能为空。 |
MissingParameter.RepoServerNull | 镜像仓库服务器不能为空。 |
MissingParameter.ServiceIdNull | 服务ID不能为空。 |
MissingParameter.SvcRepoNotReady | 镜像仓库还未就绪。 |
MissingParameter.VpcServiceSubnetNull | vpc内访问类型子网ID不能为空。 |
ResourceInUse.ServiceDeploying | 服务部署中。 |
ResourceNotFound.MicroserviceOffline | 目标微服务已离线。 |
ResourceNotFound.ServiceNotFound | 找不到应用。 |
ResourceNotFound.VersionNamespaceNotFound | 找不到版本对应的环境。 |
ResourceUnavailable.WaitForKruise | 等待组件安装。 |
UnauthorizedOperation.MissingEksLogRole | 缺少容器服务的 CLS 日志角色,请打开控制台授权。 |
UnauthorizedOperation.UnauthorizedOperation | 未授权。 |