# 创建服务版本
接口应在服务器端调用,详细说明参见服务端API。
# 接口说明
# 接口英文名
createCloudbaseServiceVersion
# 功能描述
通过本接口可以创建服务版本,使用过程中如遇到问题,可在开放平台服务商专区发帖交流。
# 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/componenttcb/createcloudbaserunserverversion?access_token=ACCESS_TOKEN
# 请求参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
access_token | string | 是 | 第三方接口调用令牌component_access_token | |
env_id | string | 是 | 环境ID | |
upload_type | string | 是 | 枚举(package/repository/image/jar/war) | |
flow_ratio | number | 是 | 流量占比 | |
cpu | float | 是 | Cpu的大小,单位:核 | |
mem | float | 是 | Mem的大小,单位:G | |
min_num | number | 是 | 最小副本数,最小值:0 | |
max_num | number | 是 | 副本最大数,最大值:50 | |
policy_type | string | 是 | 策略类型(枚举值:比如cpu) | |
policy_threshold | number | 是 | 策略阈值 | |
container_port | number | 是 | 服务端口 | |
server_name | string | 是 | 服务名称 | |
repository_type | string | 否 | repository的类型(coding/gitlab/github/coding) | |
dockerfile_path | string | 否 | Dockerfile地址 | |
build_dir | string | 否 | 构建目录 | |
env_params | string | 否 | 环境变量 | |
repository | string | 否 | repository地址 | |
branch | string | 否 | 分支 | |
version_remark | string | 否 | 版本备注 | |
package_name | string | 否 | 代码包名字 | |
package_version | string | 否 | 代码包的版本 | |
image_info | CloudBaseRunImageInfo | 否 | Image的详情 | |
code_detail | CloudBaseCodeRepoDetail | 否 | Github等拉取代码的详情 | |
image_secret_info | CloudBaseRunImageSecretInfo | 否 | 私有镜像秘钥信息 | |
image_pull_secret | string | 否 | 私有镜像 认证名称 | |
custom_logs | string | 否 | 用户自定义采集日志路径 | |
initial_delay_seconds | number | 否 | 延迟多长时间开始健康检查(单位s) | |
mount_volume_info | Array.<CloudBaseRunVolumeMount> | 否 | cfs挂载信息 | |
access_type | number | 否 | 4 代表只能微信链路访问 | |
es_info | CloudBaseEsInfo | 否 | es信息 | |
enable_union | bool | 否 | 是否使用统一域名 | |
server_path | string | 否 | 服务路径 | |
sidecar_specs | Array.<CloudBaseRunSideSpec> | 否 | 容器的描述文件 | |
security | CloudBaseSecurityContext | 否 | 安全特性 | |
service_volumes | Array.<CloudRunServiceVolume> | 否 | 服务磁盘挂载 | |
is_create_jns_gw | number | 否 | 是否创建JnsGw 0未传默认创建 1创建 2不创建 | |
service_volume_mounts | Array.<CloudBaseRunServiceVolumeMount> | 否 | 数据卷挂载参数 | |
has_dockerfile | number | 否 | 是否有Dockerfile:0-default has, 1-has, 2-has not | |
base_image | string | 否 | 基础镜像 | |
entry_point | string | 否 | 容器启动入口命令 | |
repo_language | string | 否 | 仓库语言 | |
upload_filename | string | 是 | ) | |
policy_detail | Array.<HpaPolicy> | 否 | 自动扩缩容策略组 |
CloudBaseRunImageInfo 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
repository_name | string | 否 | 镜像仓库名称 | |
is_public | bool | 否 | 是否公有 | |
tag_name | string | 否 | 镜像tag名称 | |
server_addr | string | 否 | 镜像server | |
image_url | string | 否 | 镜像拉取地址 |
CloudBaseCodeRepoDetail 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
name | CloudBaseCodeRepoName | 否 | repo的名字 | |
url | string | 否 | repo的url |
CloudBaseCodeRepoName 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
name | string | 否 | repo的名字 | |
full_name | string | 否 | repo的完整全名 |
CloudBaseRunImageSecretInfo 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
registry_server | string | 否 | 镜像地址 | |
user_name | string | 否 | 用户名 | |
password | string | 否 | 仓库密码 | |
string | 否 | 邮箱 |
CloudBaseRunVolumeMount 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
name | string | 否 | 资源名 | |
mount_path | string | 否 | 挂载路径 | |
read_only | bool | 否 | 是否只读 | |
nfs_volumes | Array.<CloudBaseRunNfsVolumeSource> | 否 | Nfs挂载信息 |
CloudBaseRunNfsVolumeSource 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
server | string | 否 | NFS挂载Server | |
path | string | 否 | Server路径 | |
read_only | bool | 否 | 是否只读 | |
secret_name | string | 否 | secret名称 | |
enable_empty_dir_volume | bool | 否 | 临时目录 |
CloudBaseEsInfo 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
id | number | 否 | es的id | |
secret_name | string | 否 | secret名字 | |
ip | string | 否 | ip地址 | |
port | number | 否 | 端口 | |
index | string | 否 | 索引 | |
account | string | 否 | 用户名 | |
password | string | 否 | 密码 |
CloudBaseRunSideSpec 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
container_image | string | 否 | 容器镜像 | |
container_port | number | 否 | 容器端口 | |
container_name | string | 否 | 容器的名称 | |
env_var | string | 否 | kv的json字符串 | |
initial_delay_seconds | number | 否 | InitialDelaySeconds 延迟多长时间启动健康检查 | |
cpu | number | 否 | CPU大小 | |
mem | number | 否 | 内存大小(单位:M) | |
security | CloudBaseSecurityContext | 否 | 安全特性 | |
volume_mount_infos | Array.<CloudBaseRunVolumeMount> | 否 | 挂载信息 |
CloudBaseSecurityContext 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
capabilities | CloudBaseCapabilities | 否 | 安全特性 |
CloudBaseCapabilities 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
add | Array.<string> | 否 | 启用安全能力项列表 | |
drop | Array.<string> | 否 | 禁用安全能力向列表 |
CloudRunServiceVolume 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
name | string | 否 | 名称 | |
nfs | CloudBaseRunNfsVolumeSource | 否 | NFS的挂载方式 | |
secret_name | string | 否 | secret名称 | |
enable_empty_dir_volume | bool | 否 | 是否开启临时目录逐步废弃,请使用 EmptyDir | |
empty_dir | CloudBaseRunEmptyDirVolumeSource | 否 | emptydir数据卷详细信息 |
CloudBaseRunEmptyDirVolumeSource 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
enable_empty_dir_volume | bool | 否 | 启用emptydir数据卷 | |
medium | string | 否 | "","Memory","HugePages" | |
size_limit | string | 否 | emptydir数据卷大小 |
CloudBaseRunServiceVolumeMount 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
name | string | 否 | Volume 名称 | |
mount_path | string | 否 | 挂载路径 | |
read_only | bool | 否 | 是否只读 | |
sub_path | string | 否 | 子路径 | |
mount_propagation | string | 否 | 传播挂载方式 |
HpaPolicy 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
policy_type | string | 否 | 策略类型 | |
policy_threshold | number | 否 | 策略阈值 |
# 返回值
返回的 JSON 数据包
属性 | 类型 | 说明 |
---|---|---|
errcode | number | 错误码 |
errmsg | string | 错误信息 |
result | string | 状态(creating/succ) |
version_name | string | 版本名称(只有Result为succ的时候,才会返回VersionName) |
run_id | string | 操作记录id |
# 调用示例
示例说明: HTTPS请求
# 请求数据示例
{
"env_id": "test-6gxk23no5605e14f",
"upload_type": "repository",
"flow_ratio": 0,
"cpu": 0.25,
"mem": 0.5,
"min_num": 0,
"max_num": 1,
"policy_type": "cpu",
"policy_threshold": 60,
"container_port": 80,
"server_name": "test",
"repository_type": "github",
"dockerfile_path": "Dockerfile",
"repository": "test/wx-container-demo",
"branch": "main",
"code_detail": {
"name": {
"name": "wx-container-demo",
"full_name": "test/wx-container-demo"
}
},
"has_dockerfile": 1,
"env_params": "{}"
}
# 返回数据示例
{
"errcode": 0,
"errmsg": "ok",
"result": "succ",
"version_name": "ss-012",
"run_id": "1mz98HwJmGdACf"
}
# 错误码
错误码 | 错误码取值 | 解决方案 |
---|---|---|
0 | ok | ok |
-1 | system error | 系统繁忙,此时请开发者稍候再试 |
-1000 | system error | 系统错误 |
40014 | invalid access_token | 不合法的 access_token ,请开发者认真比对 access_token 的有效性(如是否过期),或查看是否正在为恰当的公众号调用接口 |
40097 | invalid args | 参数错误 |
40101 | missing parameter | 缺少必填参数 |
41001 | access_token missing | 缺少 access_token 参数 |
42001 | access_token expired | access_token 超时,请检查 access_token 的有效期,请参考基础支持 - 获取 access_token 中,对 access_token 的详细机制说明 |
43002 | require POST method | 需要 POST 请求 |
44002 | empty post data | POST 的数据包为空 |
47001 | data format error | 解析 JSON/XML 内容错误;post 数据中参数缺失;检查修正后重试。 |
85088 | no qbase privilege | 该APP未开通云开发 |