# 创建服务版本

通过本接口可以创建服务版本,使用过程中如遇到问题,可在开放平台服务商专区发帖交流。

# 请求地址

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 仓库密码
email 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 策略阈值

# 返回值

# Object

返回的 JSON 数据包

属性 类型 说明
errcode number 错误码
errmsg string 错误信息
result string 状态(creating/succ)
version_name string 版本名称(只有Result为succ的时候,才会返回VersionName)
run_id string 操作记录id

errcode 的合法值

说明
0 请求成功
-1 系统错误
-1000 系统错误
40014 AccessToken 不合法
40097 请求参数错误
40101 缺少必填参数
41001 缺少AccessToken
42001 AccessToken过期
43002 HTTP METHOD 错误
44002 POST BODY 为空
47001 POST BODY 格式错误
85088 该APP未开通云开发
其他错误码 云开发错误码

# 请求数据示例

{
    "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"
}