本文介绍如何在函数中配置自定义层。
通过控制台配置
前提条件
操作步骤
为函数配置层时,如果层有多个版本,将按照具体的层版本与函数进行绑定。
- 登录函数计算控制台,在左侧导航栏,单击服务及函数。
- 在顶部菜单栏,选择地域,然后在服务列表页面,单击目标服务。
- 在函数管理页面,单击目标函数操作列的配置。
- 在层区域,单击+添加层,从下拉列表中选择添加自定义层,在自定义层和层版本下拉列表选择所需的配置,然后单击保存。
说明
- 一个函数最多支持配置5个层,包括自定义层和官方公共层。
- 当函数配置多个层时,这些层的内容将被合并至/opt目录,多个层按照层配置的逆序合并。如果多个层中有同名文件,先配置的层会覆盖后配置的层中的同名文件。
通过Serverless Devs配置
前提条件
操作步骤
- 执行以下命令查找指定地域下的自定义层。
s cli fc layer list --custom --region cn-hangzhou
执行成功后,返回自定义层列表,如下所示。从中获取目标层的arn
并记录。说明 返回的自定义层信息中,字段arn即将废弃,推荐您使用字段arnV2的值作为自定义层的ARN。- layerName: java11_fc_auto_created arn: ec284ee1c033fa7fc68ffcd44c******#java11_fc_auto_created#1 arnV2: acs:fc:cn-hangzhou:164901546557****:layers/java11_fc_auto_created/versions/1 version: 1 acl: 0 description: compatibleRuntime: - custom
示例解析如下:- layerName:层名称。
- version:层版本。
- arn:层的旧ARN。只支持在自定义层中使用。
- arnV2:层的新ARN。支持在自定义层和官方公共层中使用。
- acl:层的权限。取值0代表私有,取值1代表公有。官方公共层默认为公有,自定义层可以设置为私有或者公有。
- description:层的描述信息。
- compatibleRuntime:兼容的运行时列表。
- 在任意目录下创建s.yaml文件,填写获取的层
arn
信息。示例如下:edition: 1.0.0 # 命令行YAML规范版本,遵循语义化版本(Semantic Versioning)规范 name: fcDeployApp # 项目名称 access: "default" # 密钥别名 services: fc-deploy-test: # 服务名称 component: fc # 组件名称 props: # 组件的属性值 region: cn-hangzhou service: name: fctest description: 'test' internetAccess: true function: name: emoji # 函数名称 description: this is a emoji runtime: java11 codeUri: ./ handler: index.handler memorySize: 128 timeout: 6 layers: # 函数绑定层,取值是层的ARN - acs:fc:cn-hangzhou:164901546557****:layers/java11_fc_auto_created/versions/1
- 在s.yaml文件所在目录,执行以下命令部署函数并为其配置层。
s deploy
更多信息
您还可以通过API或SDK来管理层和配置层。您可以在以下API中配置层:
您可以通过OpenAPI Explorer调用API和SDK。
该文章对您有帮助吗?