配置文件
cloudbaserc.json 是云开发项目的核心配置文件,用于统一管理 CLI 和 VS Code 插件的部署配置。通过配置文件,您可以简化命令行操作,实现多环境部署和动态配置管理。
配置文件主要用于以下场景:
- 云函数部署:定义函数名称、运行时、超时时间、环境变量等配置
- 多环境管理:通过环境变量和动态变量支持开发、测试、生产等不同环境
- 跨工具共享:在 CLI 和 VS Code 插件间共享统一配置,避免重复设置
JSON Schema
配置文件支持 JSON Schema 验证,可在编辑器中获得代码补全和验证提示。
Schema 地址:https://static.cloudbase.net/cli/cloudbaserc.schema.json
VS Code 配置示例(在 .vscode/settings.json 中添加):
{
"json.schemas": [
{
"fileMatch": ["cloudbaserc.json"],
"url": "https://static.cloudbase.net/cli/cloudbaserc.schema.json"
}
]
}
配置字段
以下是 cloudbaserc.json 支持的顶层配置字段,点击字段名可快速跳转:
| 字段 | 类型 | 说明 |
|---|---|---|
version | String | 配置文件版本号 |
envId | String | 云开发环境 ID |
region | String | 环境所在地域 |
functionRoot | String | 云函数代码存放目录 |
functions | Array<CloudFunction> | 云函数配置项数组 |
integrations | Array<Integration> | 集成配置项数组 |
app | Object | 云应用部署配置 |
gateway | Object | 网关路由配置 |
hosting | Array<Object> | 静态托管应用配置 |
database | Object | 数据库迁移配置 |
version
| 属性 | 值 |
|---|---|
| 类型 | String |
| 默认值 | "1.0"(未指定时) |
| 说明 | 配置文件版本号,当前支持 "2.0"(动态变量)与 "2.1"(声明式部署,支持 gateway/database 等资源) |
| 示例 | "version": "2.0" |
envId
| 属性 | 值 |
|---|---|
| 类型 | String |
| 说明 | 云开发环境 ID,环境的唯一标识符 |
| 示例 | "envId": "dev-abc123" |
region
| 属性 | 值 |
|---|---|
| 类型 | String |
| 说明 | 环境所在地域。上海地域可以省略,其他地域(如新加坡)必须填写 |
| 示例 | "region": "ap-singapore" |
functionRoot
| 属性 | 值 |
|---|---|
| 类型 | String |
| 说明 | 云函数代码存放目录,相对于项目根目录的路径 |
| 示例 | "functionRoot": "./functions" 或 "functionRoot": "functions" |
functions
云函数配置项数组,每个元素是一个 CloudFunction 对象,描述一个云函数的部署配置(基础配置、代码配置、环境变量、触发器、镜像等)。完整字段列表见 配置文件-云函数。
| 属性 | 值 |
|---|---|
| 类型 | Array<CloudFunction> |
| 说明 | 每个元素描述一个云函数的部署配置(name、runtime、timeout、envVariables 等) |
常用字段速览
name(必填):函数部署后的标识符(同一envId下唯一),需与gateway.routes[].target中的function:<name>对应runtime:运行时环境,支持Nodejs16.13/Nodejs18.15/Nodejs20.19/Python3.10/Golang1.21/PHP8.2/Java17等timeout:超时时间 1-900 秒,默认5handler:处理方法名,格式文件名.函数名(如index.main),默认index.mainmemorySize:内存大小(MB),64-3072,默认256envVariables:环境变量,键值对,支持{{env.NAME}}引用外部变量;密钥类推荐用 KMS/SCF 密钥管理,不要硬编码functionRoot(顶层):所有函数的根目录,未指定dir时函数部署路径为functionRoot/name- 完整 30+ 字段按基础配置 / 代码和依赖 / 高级配置 / 触发器 / VPC / WebSocket / 并发 / 镜像分组见 配置文件-云函数
示例:
{
"functions": [
{
"name": "app",
"timeout": 10,
"runtime": "Nodejs16.13",
"envVariables": {
"API_KEY": "{{env.API_KEY}}"
}
}
]
}
integrations
集成配置项数组,每个元素描述一个集成中心的配置(微信支付、公众号、AI 工具等)。集成中心把凭证、回调、验签等模板化逻辑沉淀在平台层,业务方只需用云函数 SDK / HTTP 调用即可。完整字段列表见 配置文件-集成。
| 属性 | 值 |
|---|---|
| 类型 | Array<Integration> |
| 说明 | 每个元素描述一个集成的配置(keyId、authTypeCode、envVariables 等) |
常用字段速览
keyId(必填):集成实例唯一标识,用于匹配云端已有实例;同一envId下唯一authTypeCode