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 包或者 WAR 包部署的时候必填。 示例值:1 |
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 |
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
<公共请求参数>
{
"Service": {
"ApplicationName": "xx",
"ExternalIp": "xx",
"Name": "xx",
"PortMappings": [
{
"Protocol": "xx",
"TargetPort": 0,
"Port": 0
}
],
"Yaml": "xx",
"LoadBalanceId": "xx",
"VersionName": "xx",
"ClusterIp": [
"xx"
],
"SubnetId": "xx",
"Type": "xx",
"Ports": [
0
]
},
"JvmOpts": "xx",
"StorageConfs": [
{
"StorageVolName": "xx",
"StorageVolIp": "xx",
"StorageVolPath": "xx"
}
],
"ImgRepo": "xx",
"EnvConf": [
{
"Value": "xx",
"Key": "xx"
}
],
"ImageCommand": "xx",
"Description": "xx",
"JdkVersion": "xx",
"ApplicationId": "xx",
"LogOutputConf": {
"ClsLogTopicId": "xx",
"ClsLogsetName": "xx",
"ClsLogsetId": "xx",
"ClsLogTopicName": "xx",
"OutputType": "xx"
},
"UseRegistryDefaultConfig": true,
"CpuSpec": 0.0,
"DeployMode": "xx",
"SecurityGroupIds": [
"xx"
],
"SourceChannel": 0,
"DeployVersion": "xx",
"InitPodNum": 1,
"VersionDesc": "xx",
"ImageArgs": [
"xx"
],
"MemorySpec": 0.0,
"EnvironmentId": "xx",
"LogConfs": [
"xx"
],
"PkgName": "xx",
"StorageMountConfs": [
{
"VolumeName": "xx",
"MountPath": "xx"
}
],
"EsInfo": {
"MinAliveInstances": 0,
"EsStrategy": 0,
"VersionId": "xx",
"Threshold": 1,
"MaxAliveInstances": 2
},
"VersionId": "xx",
"SettingConfs": [
{
"ConfigDataName": "xx",
"MountedPath": "xx",
"Data": [
{
"Value": "xx",
"Key": "xx"
}
]
}
],
"OsFlavour": "ALPINE"
}
输出示例
{
"Response": {
"RequestId": "81f74023-563c-437d-abf7-8139449ef178",
"Result": "version-xxx"
}
}
示例2 nanjing-test-20220111
输入示例
POST / HTTP/1.1
Host: tem.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: DeployApplication
<公共请求参数>
{
"Service": {
"Name": "字符串"
},
"JvmOpts": "字符串",
"SpeedUp": "false",
"PreStop": "字符串",
"ImgRepo": "字符串",
"EnvConf": [
{
"Config": "字符串",
"Type": "字符串",
"Key": "字符串",
"Value": "字符串"
}
],
"ImageCommand": "字符串",
"Description": "字符串",
"JdkVersion": "字符串",
"ApplicationId": "字符串",
"LogOutputConf": {
"ClsLogTopicName": "字符串",
"ClsLogsetName": "字符串",
"ClsLogTopicId": "字符串",
"OutputType": "字符串",
"ClsLogsetId": "字符串"
},
"ConfEdited": "false",
"EnvironmentId": "字符串",
"CpuSpec": "0.1",
"DeployMode": "字符串",
"SecurityGroupIds": [
"字符串"
],
"SourceChannel": "0",
"LogEnable": "0",
"InitPodNum": "2",
"VersionDesc": "字符串",
"ImageArgs": [
"字符串"
],
"MemorySpec": "1024",
"UseRegistryDefaultConfig": "true",
"LogConfs": [
"字符串"
],
"PkgName": "字符串",
"StorageMountConfs": [
{
"VolumeName": "字符串",
"MountPath": "字符串"
}
],
"DeployVersion": "字符串",
"VersionId": "字符串",
"SettingConfs": [
{
"ConfigDataName": "字符串",
"MountedPath": "字符串",
"Data": [
{
"Config": "字符串",
"Type": "字符串",
"Key": "字符串",
"Value": "字符串"
}
]
}
],
"StorageConfs": [
{
"StorageVolPath": "字符串",
"StorageVolIp": "字符串",
"StorageVolName": "字符串"
}
],
"PostStart": "字符串",
"OsFlavour": "ALPINE"
}
输出示例
{
"Response": {
"RequestId": "422a54ac-9913-4d46-8439-9c05600003b3",
"Result": "version-success"
}
}
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 | 未授权。 |