当前位置:主页 > 查看内容

Serverless 应用中心 层部署使用指引 - 进阶指南

发布时间:2021-10-15 00:00| 位朋友查看

简介:操作场景 由于云函数限制,目前只支持上传小于 50MB 的代码包,当您的项目过大时,您可以将依赖放在层中而不是部署包中,可确保部署包保持较小的体积。层的具体使用请参考 层管理相关操作。 操作步骤 创建层 新建层并上传依赖,您可以通过以下两种方式操作:……

操作场景

由于云函数限制,目前只支持上传小于 50MB 的代码包,当您的项目过大时,您可以将依赖放在层中而不是部署包中,可确保部署包保持较小的体积。层的具体使用请参考 层管理相关操作。

操作步骤

创建层

新建层并上传依赖,您可以通过以下两种方式操作:

  • 通过 Serverless 应用控制台 直接创建
  • 使用 Serverless Framework 的 Layer 组件(参考 Layer 组件)

使用层

您可以通过控制台配置和本地配置两种方法,在项目配置中使用层部署,具体如下:

控制台配置

  • 对于 Node.js 框架应用,Serverless Framework 会自动为您创建名为 ${appName}-layer 的层,并自动帮您把应用的依赖项 node_modules 上传到该层中。

  • 导入已有项目时,您也可以选择使用新建层或已有层完成部署,选择新建层时,Serverless Framework 会自动帮您把应用的依赖项 node_modules 上传到该层中。

    说明:

    新建层操作仅支持 Node.js 框架,其它框架使用层时,请确保已经完成层的创建并已经把相关依赖想上传到层中。

通过 Layer 组件配置

  1. 此处以 Next.js 组件为例,调整本地项目目录,新增 layer 文件夹,并创建 serverless.yml 文件,完成层的名称与版本配置,yml 模版如下:

    app: appDemo
    stage: dev
    component: layer
    name: layerDemo
    inputs:
    name: test
    region: ap-guangzhou
    src: ../node_modules #需要上传的目标文件路径
    runtimes:
    - Nodejs10.14

    查看详细配置,请参考 layer 组件全量配置文档。

    更新后的项目目录结构如下:

    .
    ├── node_modules
    ├── src
    │   ├── serverless.yml # 函数配置文件
    │   └── index.js # 入口函数
    ├── layer
    │   └── serverless.yml # layer 配置文件
    └── .env # 环境变量文件
  2. 打开项目配置文件,增加 layer 配置项,并引用 layer 组件的输出作为项目配置文件的输入,模版如下:

    app: appDemo
    stage: dev
    component: nextjs
    name: nextjsDemo
    inputs:
    src:
     src: ./
     exclude:
       - .env
    
    region: ap-guangzhou
    runtime: Nodejs10.15
    apigatewayConf:
      protocols:
        - http
        - https
      environment: release
    layers:
      - name: ${output:${stage}:${app}:layerDemo.name} #  layer名称
      version: ${output:${stage}:${app}:layerDemo.version} #  版本

    引用格式请参考 变量引用说明。

  3. 在项目根目录下,执行 sls deploy,即可完成 Layer 的创建,并将 Layer 组件的输出作为 Next.js 组件的输入完成层的配置。


本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:地理函数 - 日志服务 下一篇:没有了

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐