前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【scf】scf工具使用cos部署应用

【scf】scf工具使用cos部署应用

原创
作者头像
williamji
发布2022-11-08 12:00:42
7100
发布2022-11-08 12:00:42
举报
文章被收录于专栏:腾讯云产品

云函数部署

控制台

登录腾讯云Serverless 控制台,单击左侧导航栏的函数服务可以创建云函数也可以单机左侧导航栏的Serverless 应用来新建应用

新建云函数参考:控制台新建云函数

新建Serverless应用参考:控制台新建Serverless应用

命令行工具

实际上,大多数开发人员喜欢用scf(以前是sls)命令来部署应用。控制台的模板源码包其实scf工具也可以复用部署

scf工具部署云函数参考:scf工具部署云函数

vs code插件

Tencent Serverless Toolkit for VS Code 是腾讯云 Serverless 产品的 VS Code(Visual Studio Code)IDE 的插件。该插件可以让您更好的在本地进行 Serverless 项目开发和代码调试,并且轻松将项目部署到云端

参考:vs code插件部署云函数

scf工具使用cos代码部署应用

大部分时候,用户代码是在本地,使用旧版sls部署应用会把本地代码上传到cos,这种情况会偶现如下报错,原因sls服务是在广州区域,上传到客户其他区域跨地域可能会有超时

代码语言:javascript
复制
{"Code":"UPLOAD_CODE","Message":"Upload cos failed, please check bucket exist or not."}

基于此,可以在serverless.yml中配置指定cos,这样不会在服务端走上传流程。

scf工具安装和配置

参考scf工具安装

参考scf配置

scf安装

  • scf安装 需要环境中已安装好了 Node(版本需要 > 12)
代码语言:javascript
复制
npm i -g serverless-cloud-framework

  • 查看scf版本
代码语言:javascript
复制
scf -v

scf工具配置

  • scf需要配置secretid和secretkey。并且需要给子账号关联相关策略
代码语言:javascript
复制
scf credentials set --secretId xxx --secretKey xxx

上传代码包到cos

  • 创建存储桶,参考文档:创建存储桶
  • 在存储桶创建个代码目录,这里以williamji-scf-cos为例
  • 本地把代码打包,注意是源码打包,不是serverless应用打包。这里参考把index.js代码打包
代码语言:javascript
复制
zip index.js.zip index.js

  • 在cos控制台对应代码目录上传代码zip包,上传后样例如下

serverless.yml配置

  • 使用scf工具需要配置serverless.yml,scf工具部署依赖serverless.yml里面的配置
  • 使用cos源码部署应用的serverless.yml样例如下:
代码语言:javascript
复制
component: scf
name: scf-nodejs-cos
app: williamji-test-scf
inputs:
  src: 
    bucket: <bucket-name>                     # 桶名,例如<name>-<appid>
    object: /williamji-scf-cos/index.js.zip   # cos源码包路径
  description: deploy application from cos code 
  handler: index.main_handler
  runtime: Nodejs10.15
  name: williamji-cos
  region: ap-guangzhou
  memorySize: 128
  timeout: 10

  • 在serverless.yml同级目录使用sls deploy部署应用即可
  • 到控制台查看对应的云函数是否存在

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 云函数部署
    • 控制台
      • 命令行工具
        • vs code插件
        • scf工具使用cos代码部署应用
          • scf工具安装和配置
            • scf安装
            • scf工具配置
          • 上传代码包到cos
            • serverless.yml配置
            相关产品与服务
            对象存储
            对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档