@cloudbase/framework-plugin-container v1.9.7

Tencent CloudBase Framework Container Plugin
云开发 CloudBase Framework 框架「Container」插件: 通过云开发 CloudBase Framework 框架将项目应用一键部署到云开发的云托管环境,提供生产环境可用的自动弹性伸缩的高性能的容器计算服务。可以搭配其他插件如 Website 插件、Node 插件实现云端一体开发。
功能特性
- 节约成本: 资源伸缩,弹性扩缩容,灵活计费,极大节约资源成本
- 极简配置:自动检测框架,无须配置
- 语言支持和框架支持广泛
Node.JSPHPJavaGoDartDeno
使用方法
步骤一. 准备工作
具体步骤请参照 准备云开发环境和 CloudBase CLI 命令工具
步骤二. 进入项目目录进行初始化
如果是目前已有的后端应用项目
cloudbase如果想全新开始一个项目,可以直接执行 init 来从模板开始一个项目
cloudbase init步骤三. 一键部署
cloudbase framework deploy配置
默认情况下不需要任何配置即可使用,以下配置参数针对有特殊需求的场景
配置示例
cloudbase init 之后会创建云开发的配置文件 cloudbaserc.json,可在配置文件的 plugins 里修改和写入插件配置
{
"envId": "{{envId}}",
"framework": {
"plugins": {
"client": {
"use": "@cloudbase/framework-plugin-container",
"inputs": {
"serviceName": "node-api",
"servicePath": "/node-api",
"localPath": "./"
}
}
}
}
}配置参数说明
uploadType
选填,容器镜像代码来源类别,支持package|image|repository3 种,分别代表本地代码包、镜像地址和 git 仓库地址。默认是package, 选择image时需要填写 imageInfo, 选择 repository 需要填写codeDetail
serviceName
必填,服务名,字符串格式,如 node-api
servicePath
必填,服务路径配置, 字符串格式, 如 /node-api
localPath
选填,本地代码文件夹相对于项目根目录的路径,默认值 ./
localAbsolutePath
选填,本地代码文件夹的绝对路径
isPublic
选填,是否对外网开放访问,默认值 true
flowRatio
选填,流量占比(0-100),默认值 100
mode
选填,副本模式
1.4.0 版本以后支持
副本模式,字符串格式,默认值 low-cost,可选值为 low-cost | high-availability
low-cost 代表低成本模式,会有冷启动延时,锁定最小副本数为 0,规格默认值为 0.25C0.5G,副本最小个数不可修改,要修改需要先切换模式。
high-availability 代表高可用模式,不存在冷启动,最小副本数不可以为 0,规格默认值为 1C1G,要修改最小副本数到 0 需要先切换模式。
cpu
选填,CPU 的大小,0.25-128, 单位:核,默认值 0.25
mem
选填,Mem 的大小,0.5-128, 单位:G,默认值 0.5
minNum
选填,最小副本数, 0-50,默认值 0
maxNum
选填,最大副本数,1-50,默认值 10
serviceVersion
选填,服务版本号,默认值空
policyType
选填,策略类型(cpu),默认值 cpu ,支持 cpu | mem
policyThreshold
选填,策略阈值,1-100, 默认值 60
containerPort
选填,服务端口,默认值 80
dockerfilePath
选填,Dockerfile 的路径,默认值 ./Dockerfile
buildDir
选填,构建目录,默认值 ./
envVariables
选填,环境变量键值对,会被注入到云托管的运行时环境变量中
imageInfo
uploadType 填写为 image时需要填写 imageInfo,类型是对象格式
| 属性名称 | 类型 | 长度 | 是否必填 | 描述 |
|---|---|---|---|---|
| imageUrl | String | 1-512 | 是 | 镜像拉取地址 |
imageUrl 格式为 registry-url/namespace/image:tag,支持腾讯云 ccr.ccs.tencentyun.com 上的镜像地址,也支持 dockerhub 公开的镜像,如 nginx:latest
例如
{
"envId": "{{envId}}",
"framework": {
"name": "capp-example",
"plugins": {
"client": {
"use": "@cloudbase/framework-plugin-container",
"inputs": {
"serviceName": "node-api",
"servicePath": "/node-api",
"localPath": "./",
"uploadType": "image",
"imageInfo": {
"imageUrl": "ccr.ccs.tencentyun.com/tcb-100010952056-rjdt/webpage_node-api:node-api-001-1597238358"
}
}
}
}
}
}codeDetail
uploadType 填写为 repository 时需要填写codeDetail,类型是对象格式
| 属性名称 | 类型 | 长度 | 是否必填 | 描述 |
|---|---|---|---|---|
| name | CodeRepoName 对象 | 1-512 | 否 | repo 的名字 |
| url | String | 1-512 | 否 | repo 的 url |
例如
{
"envId": "{{envId}}",
"framework": {
"name": "capp-example",
"plugins": {
"client": {
"use": "@cloudbase/framework-plugin-container",
"inputs": {
"serviceName": "deno",
"servicePath": "/deno",
"localPath": "./",
"uploadType": "repository",
"codeDetail": {
"name": "deno-docker",
"url": "https://github.com/TabSpace/deno-docker"
}
}
}
}
}
}volumeMounts
挂载目录设置,1.4.0 版本以后支持
类型是对象格式,key 为挂载路径,value 为挂载的 CFS Addon 的 Name
例如
{
"version": "2.0",
"envId": "{{env.ENV_ID}}",
"framework": {
"name": "grafana",
"plugins": {
"client": {
"use": "@cloudbase/framework-plugin-container",
"inputs": {
"mode": "low-cost",
"serviceName": "grafana",
"servicePath": "/",
"localPath": "./",
"uploadType": "package",
"containerPort": 3000,
"envVariables": {},
"volumeMounts": {
"/var/lib/grafana": "grafana-cfs"
}
}
}
},
"requirement": {
"addons": [
{
"type": "CFS",
"name": "grafana-cfs"
}
]
}
}
}customLogs
可选,用户自定义采集日志路径, 1.4.0 版本以后支持
字符串格式,最长支持 1024
initialDelaySeconds
可选,延迟多长时间开始健康检查
单位 s,支持设置 0-1000
bumpVersion
可选,是否自动创建新版本
选择自动创建新版本,可以在控制台进行流量的灰度和控制,不选择的情况下会自动原位更新
versionRemark
可选,版本备注信息
ignore
1.7.1版本
忽略的文件路径,支持通配符
选填,字符串数组格式,例如['foo/**', 'bar.js']
默认值 ['.git']
更多插件
请访问 CloudBase Framework 插件列表 搭配使用其他插件
文档资料
- 云开发官网地址: https://cloudbase.net/
- 云开发静态网站开通指南:https://docs.cloudbase.net/hosting/
- 云开发控制台地址: https://console.cloud.tencent.com/tcb
2 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago