SCF CLI

SCF CLI

SCF CLI 是腾讯云云函数(Serverless Cloud Function,SCF)产品的命令行工具。通过 scf 命令行工具,您可以方便的实现函数打包、部署、本地调试,也可以方便的生成云函数的项目并基于 demo 项目进一步的开发。 scf cli 通过一个函数模板配置文件,完成函数及相关周边资源的描述,并基于配置文件实现本地代码及配置部署到云端的过程。 目前 scf cli 以开源形式发布

配置操作

SCF CLI 提供了“交互式配置” 和 “非交互式配置”,您可以根据使用习惯自行选择。

交互式配置:

通过执行 scf configure set 命令,可将获取的配置信息配置到 SCF CLI 中,也可修改某个配置项的信息。 例如,用户希望在广州地区使用云函数,并获取到账号 ID 为 1253970223,SecretId 和 SecretKey 分别为 AKIxxxxxxxxxx,uxxlxxxxxxxx。您可以选择以下命令,完成 SCF CLI 的配置。

using-cos 是指在部署时是否通过 COS 部署,默认为关闭状态,建议开启此功能。使用 COS 部署会显著提升部署速度

修改 using-cos 配置项时,请注意:

开启此项请使用 scf configure set --using-cos y 命令。 关闭此项请使用 scf configure set --using-cos n 命令。

查询配置

执行以下命令,获取已配置的信息。

$ scf configure get

在 ~/.tcli_config.ini 看到所有配置信息

初始化示例项目

通过 SCF CLI 的初始化能力,我们可以快速的创建出一个简单的模板项目,并基于模板项目进行进一步的开发。创建出的模板项目,具有了所需的代码文件、配置文件,可以直接进行打包部署,也可以进行进一步的修改后进行部署。

初始化命令

通过 scf init 命令进行项目初始化操作。

image

打包部署

通过 SCF CLI,您可以简单地执行命令,将本地云函数项目部署至云端,并可以在本地 CLI 查看云端函数运行的日志。

函数部署

SCF CLI 通过 deploy 子命令来完成函数打包部署。SCF 命令行工具依据指定的函数模板配置文件,将配置文件中指定的代码包、函数配置等信息,部署到云端,或更新云端的函数。

scf deploy 命令的执行过程均基于函数模板配置文件

image

日志查看

SCF CLI 可以通过 scf logs 命令查看云端函数产生的历史或实时日志

image

不加 --duration 参数,默认获取最近1min的日志。 不加 --region 参数,默认为 scf configure 里的 region。 不加 --namespace 参数,默认为 default 命名空间。

云端调用函数

SCF CLI 可以通过 scf remote invoke 命令查看云端函数产生的历史或实时日志

image

本地调试

本地调试 native 不需要依赖 Docker,需确保系统中已经安装好 Node.js 环境。当前 native 命令仅支持 Node.js 和 Python runtime。为保证部署云端和本地运行的结果一致,建议本地安装的 runtime 版本和云端版本保持一致。例如,如在云端使用 Node.js 6.10,则本机建议也安装 Node.js 6.x 版本。

CF CLI 通过 native invoke 子命令完成本地触发运行。SCF 命令行工具将依据指定的函数模板配置文件,在本机的指定目录中运行相应代码,并通过指定的触发事件,实现在本地的云函数模拟运行。

image

SCF CLI 通过 local invoke 子命令完成本地触发运行。SCF 命令行工具将依据指定的函数模板配置文件,启动容器实例,将代码目录挂载到容器实例的指定目录中,并通过指定的触发事件,运行代码,实现在本地的云函数模拟运行。

image

查看函数信息

SCF CLI 可以通过 scf function info 命令查看云端函数信息。

image

当不指定 region 和 namespace 时,默认使用 configure 里的 region 和 default 命名空间。 可执行 scf configure get 命令查看 configure 配置信息。

获取函数列表

SCF CLI 可以通过 scf function list 命令查看已部署至云端的函数列表。

image

删除函数

SCF CLI 可以通过 scf function delete 命令删除已部署至云端的函数。

image

原文地址:https://www.cnblogs.com/liuxiaokun/p/12684403.html