# Nest9.0 系列 - 04 - 通过 serverless.yml 配置 "层"
使用腾讯云 serverless 开发应用很重要的一个地方就是层的概念
所谓层,可以理解为程序的依赖库文件,比如 nodejs 的依赖库文件 node_modules
当我们每次更新部署的时候只传输打包后的代码,不传输 node_modules
当库文件没有变动的时候,层也就不用去变更
现在用腾讯云 Serverless cli 来管理层
在项目根目录下创建 layer
文件夹
里面创建 serverless.yml
文件
app: manager | |
stage: dev | |
component: layer | |
name: manager-layer | |
inputs: | |
name: manager-layer | |
region: ap-shanghai | |
src: | |
src: ./node_modules | |
targetDir: /node_modules | |
runtimes: | |
- Nodejs16.13 |
将 package.json
文件复制到 layer 里一份,执行 yarn install --production
安装 dependencies
库文件
然后即可使用 sls deploy
进行部署层了
> sls deploy | |
serverless ⚡tencent | |
Action: "deploy" - Stage: "dev" - App: "manager" - Name: "manager-layer" | |
bucket: sls-layer-ap-shanghai-code | |
description: Layer created by serverless component | |
name: manager-layer | |
object: manager-layer-1661497557.zip | |
region: ap-shanghai | |
runtimes: | |
- Nodejs16.13 | |
sourceCodeDownloadUrl: https://sls-app-code-prod-1300862921.cos.ap-guangzhou.myqcloud.com/1252902543%2Fdev%2Fmanager%2Fmanager-layer%2Fsource.zip?sign=q-sign-algorithm%3Dsha1%26q-ak%3DAKIDfBS1NUcuMcgVSTqzRhiX6lBUbY4KeLXW%26q-sign-time%3D1661497572%3B1661501172%26q-key-time%3D1661497572%3B1661501172%26q-header-list%3Dhost%26q-url-param-list%3D%26q-signature%3D61f02ede01bc9e624097ca14f880fe4cc44a83a7 | |
version: 6 | |
应用控制台: https://serverless.cloud.tencent.com/apps/manager/manager-layer/dev | |
88s »manager-layer» 执行成功 |
现在更新层版本的时候就不用去腾讯云后台上传文件夹了,极大的方便了我们更新部署代码.