前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Serverless实践系列(十):全新命令行工具帮你快速部署云函数

Serverless实践系列(十):全新命令行工具帮你快速部署云函数

作者头像
腾讯云serverless团队
发布2019-09-19 10:40:40
1.5K0
发布2019-09-19 10:40:40
举报

SCF CLI 是腾讯云云函数(Serverless Cloud Function,SCF)产品的命令行工具,想必很多小伙伴已经有所了解,或者试用过了。作为一个可以提高开发者效率的工具,腾讯云 Serverless 团队一直在对 SCF CLI 进行优化工作,本文将给大家介绍新版 SCF CLI 增加的有趣功能!


介绍

一、Deploy 功能优化

1:部署可以选择默认 COS

只需要在设置的时候,设置 using-cos 就可以,当然也可以 scf configure set --using-cos y 来直接设置:

选择之后,可以在接下来的部署中,默认上传代码到你的 cos,提高部署速度:

即使设置了 cos,在某次 Deploy 时,不想使用 cos,也可以选择不通过 cos 部署,增加 --without-cos:

想自定义 COS 也可以:--cos-bucket:

(由于没有这个 cos,所以上传失败)

在日常使用过程中,可能会存在部署同样一段代码的情况。

比如,我部署了 A 代码,又部署了 B 代码。之后,我想重新部署 A 代码,按照传统方法是可以再次上传 A 代码,但如果 Package 比较大,就比较难受了。而新版本的 CLI 经过测试,130M 的 Package 首次部署使用 25s,第二次部署同样的文件,只需要 2s。

附:COS 的相关计费链接

  • 免费额度:

https://cloud.tencent.com/document/product/436/6240

  • 计费概述:

https://cloud.tencent.com/document/product/436/16871

  • 计费方法:

https://cloud.tencent.com/document/product/436/36522

  • 产品定价

https://cloud.tencent.com/document/product/436/6239

2:部署历史版本

代码部署过程中,如果出现问题,需要恢复历史版本。新版本的 SCF CLI 支持部署历史版本,在大家使用了 using-cos 之后,可以通过 deploy 的参数 --history 来部署历史版本:

选择一个历史版本,就可以直接实现文档回滚:

3:打包功能优化

旧版 SCF CLI 会把用户目录下的全部文件打包,新版 SCFCLI 在这方面也做了重点优化,可以直接指定 ZIP,指定某文件,并且打包的时候会默认去除 .git 等隐藏目录,并且在 deploy 之后,默认删除之前的打包信息。

Yaml 文件可以这样:

二、新增 Delete 功能

旧版 SCF CLI 不支持 Delete 功能,在新版中,大家可以轻松自在地使用:

只需要输入 scf delete --help 就可以看到使用方法和参数描述哦!

三、新增 List 功能

以往,如果想查看云函数的内容,或者我部署了哪些函数,是需要去控制台挨个区域、挨个 namespace 查看。现在无需繁琐,通过 List 指令即可实现:

同样可以通过 SCF 的 --help 来查看所有用法:scf list --help

四、帮助文档的优化

上面的很多说明,都是让大家使用 --help 来查看帮助,那么在新版中,--help 有哪些大的优化呢 —— 全局的帮助文档优化,在任何指令下都可以 --help 查看帮助:

在指令页面可以进行例子查看:

每个主要的指令,都会有指令的描述以及使用例子,同时规范了参数描述。

五、API 网关部分

现有 SCF CLI 在使用 API 网关的时候每次都需要新建,如果不想新建,就需要注释配置文件或者使用 --skip-event,这让很多用户头疼。新版 SCF CLI 在 API 网关部分增加了 ServiceId 字段:

有了这个字段,大家使用的时候可以直接选择绑定已有网关。新建网关之后,系统会进行提示:

把对应的网关 ID 填写上即可避免下次创建。这样一个简单的字段增加,给小伙伴们带来了两个优秀的体验:

    1:可以绑定现有的 API 网关,不需要新建

    2:可以保证现有网关形态,不会每次新建

六、输出信息优化

有心的小伙伴应该注意到了,本次更新,UI 变化非常大。在我们使用云函数的时候,不同表达会用不同的颜色显示:

同时,Deploy 之后,大家不用打开网页看云函数信息,而是通过控制台直接看到:

实验

Hello world

以 Hello World 为例,通过帮助查看 init 创建指令:

scf init --help

根据例子创建 Python 语言的 hello world:

scf init --runtime python3.6

按照提示:cd hello_world 进行项目编辑

修改代码和配置网关:

网关这里要用,我不想新建网关,而是想要用已经有的一个 API 网关:

填写好 serviceeId:

然后保存退出,Deploy:

部署之后,输出函数信息:

打开 API 网关中 subDomain:

部署成功!

查看函数列表

只需要输入 scf list

删除函数

只需要输入需要删除的函数相关信息:

scf delete --name hello_world --region ap-shanghai --namespace default

本文关于命令行工具的介绍和实践就暂告一段落。

更多功能,等待各位小伙伴自行挖掘哦!


推荐阅读:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ServerlessCloudNative 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Deploy 功能优化
    • 1:部署可以选择默认 COS
      • 2:部署历史版本
        • 3:打包功能优化
        • 二、新增 Delete 功能
        • 三、新增 List 功能
        • 四、帮助文档的优化
        • 五、API 网关部分
        • 六、输出信息优化
        • 实验
          • Hello world
            • 查看函数列表
              • 删除函数
              相关产品与服务
              API 网关
              腾讯云 API 网关(API Gateway)是腾讯云推出的一种 API 托管服务,能提供 API 的完整生命周期管理,包括创建、维护、发布、运行、下线等。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档