部署云函数
命令说明
使用 tcb fn deploy 命令可以快速部署云函数到云开发环境。
基本用法
在包含 cloudbaserc.json 配置文件的项目目录下,执行以下命令:
# 部署指定的云函数
tcb fn deploy <functionName>
# 部署配置文件中的所有云函数
tcb fn deploy
命令参数
Usage: tcb fn deploy [options] [name]
Options:
-e, --envId <envId> 环境 Id
--code-secret <codeSecret> 传入此参数将保护代码,格式为 36 位大小写字母和数字
--force 如果存在同名函数,上传后覆盖同名函数
--path <path> 自动创建 HTTP 访问服务访问路径
--all 部署配置文件中包含的全部云函数
--dir <dir> 指定云函数的文件夹路径
-h, --help 查看命令帮助信息
使用示例
基础部署
# 部署名为 app 的云函数
tcb fn deploy app
# 部署配置文件中的所有函数
tcb fn deploy
代码加密
在部署云函数时,可以通过 --code-secret 参数对代码进行加密,密钥需要使用 36 位大小写字母和数字组成:
tcb fn deploy app --code-secret 7sGLwMnhgEfKmkqg2dMjB6xWk2hCxsAgGR6w
注意
启用代码加密后,将无法在小程序 IDE、腾讯云控制台中查看云函数的代码和信息。
覆盖同名函数
如果云端已存在同名函数,CLI 会提示是否覆盖。如需强制覆盖,可使用 --force 参数:
tcb fn deploy app --force
重要提示
使用 --force 参数覆盖函数时,会同时覆盖函数的配置和触发器。
默认配置
对于 Node.js 云函数,CLI 提供了默认配置,无需手动配置即可部署:
{
"timeout": 5,
"runtime": "Nodejs10.15",
"installDependency": true,
"handler": "index.main",
"ignore": ["node_modules", "node_modules/**/*", ".git"]
}
部署流程
执行 tcb fn deploy 命令时,CLI 会自动完成以下操作:
- 打包上传: 将函数代码打包为压缩文件并上传
- 配置更新: 更新函数配置(超时时间、内存、环境变量、网络配置等)
- 触发器部署: 根据配置文件部署或更新触发器
注意事项
文件大小限制
tcb fn deploy 命令部署的函数文件大小总计不能超过 50 MB,否则可能导致部署失败。
环境变量覆盖规则
cloudbaserc.json 文件中的环境变量配置在部署时会完全覆盖线上已配置的环境变量,而非增量合并。
重要: 如果您在控制台中手动配置了环境变量,请确保在 cloudbaserc.json 中也包含这些配置,否则部署后原有环境变量将会丢失。