Layer 命令

layer 命令是进行层操作的命令。

命令解析

当执行命令layer -h/layer --help时,可以获取帮助文档。

在该命令中,包括了四个子命令:

layer publish 命令

layer publish 命令,是用于层发布的命令。

当执行命令layer publish -h/layer publish --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地区,取值范围:cn-hangzhou, cn-beijing, cn-beijing, cn-hangzhou, cn-shanghai, cn-qingdao, cn-zhangjiakou, cn-huhehaote, cn-shenzhen, cn-chengdu, cn-hongkong, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-5, ap-northeast-1, eu-central-1, eu-west-1, us-west-1, us-east-1, ap-south-1
code-必填必填层的代码
compatible-runtime-选填选填支持的runtime,取值范围nodejs14,nodejs12,nodejs10,nodejs8,nodejs6,nodejs4.4,python3.9,python3,python2.7,java11,java8,go1,php7.2,dotnetcore2.1,custom7
description选填选填发布层的描述
layer-name必填必填层的名字

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s layer publish进行层的发布,例如 s layer publish --layer-name demo --code ./code
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定服务所在地区,例如s cli fc layer publish --region cn-hangzhou --layer-name demo --code ./code

Python 项目的依赖库需要放在./code/python路径下,比如./code/python/flask

上述命令的执行结果示例:

fc-deploy-test: 544c887879c38e5d0afcaf8b4f8f348e#demo#1

layer list 命令

layer list 命令,是用于获取层列表的命令。

当执行命令layer list -h/layer list --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地区,取值范围:cn-hangzhou, cn-beijing, cn-beijing, cn-hangzhou, cn-shanghai, cn-qingdao, cn-zhangjiakou, cn-huhehaote, cn-shenzhen, cn-chengdu, cn-hongkong, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-5, ap-northeast-1, eu-central-1, eu-west-1, us-west-1, us-east-1, ap-south-1
prefix-选填选填
table-选填选填

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s layer list获取层列表;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定服务所在地区,例如s cli fc layer list --region cn-hangzhou

上述命令的执行结果示例:

fc-deploy-test:
  -
    layerName:         demo
    arn:               544c887879c38e5d0afcaf8b4f8f348e#demo#1
    version:           1
    description:
    compatibleRuntime:
      - nodejs12
      - nodejs10
      - nodejs8
      - nodejs6
      - python3
      - python2.7

layer detail 命令

layer detail 命令,是用户获取指定层和版本详情的命令。

当执行命令layer detail -h/layer detail --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地区,取值范围:cn-hangzhou, cn-beijing, cn-beijing, cn-hangzhou, cn-shanghai, cn-qingdao, cn-zhangjiakou, cn-huhehaote, cn-shenzhen, cn-chengdu, cn-hongkong, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-5, ap-northeast-1, eu-central-1, eu-west-1, us-west-1, us-east-1, ap-south-1
layer-name-必填必填层名称
version-id-必填必填层版本

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s layer detail --layer-name layerName --version-id versionId获取指定层和指定版本详情;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定服务所在地区,例如s cli fc layer detail --region cn-hangzhou --layer-name demo --version-id 1

上述命令的执行结果示例:

fc-deploy-test:
  layerName:         demo
  version:           1
  description:
  code:
    repositoryType: null
    location:       https://fc-hz-yunqi-func-code.oss-cn-hangzhou-internal.aliyuncs.com/1583208943291465%2Fdemo%2Fdecddf35-8705-4f80-9baa-2c4a9ffc512b?Expires=1636621101&OSSAccessKeyId=&Signature=cZZHNSpeewLXVoFd2%2FdFuLBe4cc%3D
  codesize:          550
  codeChecksum:      17221560529872498506
  createTime:        2021-11-11T08:46:38Z
  acl:               0
  compatibleRuntime:
    - nodejs12
    - nodejs10
    - nodejs8
    - nodejs6
    - python3
    - python2.7
  arn:               544c887879c38e5d0afcaf8b4f8f348e#demo#1

layer versions 命令

layer versions 命令,是获取指定层版本列表的命令。

当执行命令layer version -h/layer versions --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地区,取值范围:cn-hangzhou, cn-beijing, cn-beijing, cn-hangzhou, cn-shanghai, cn-qingdao, cn-zhangjiakou, cn-huhehaote, cn-shenzhen, cn-chengdu, cn-hongkong, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-5, ap-northeast-1, eu-central-1, eu-west-1, us-west-1, us-east-1, ap-south-1
layer-name-必填必填层名称
table-选填必填是否以表格形式输出

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s layer versions --layer-name layerName获取指定层中的版本列表;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定服务所在地区,例如s cli fc layer versions --layer-name layerName --region cn-hangzhou

上述命令的执行结果示例:

fc-deploy-test:
  -
    layerName:         demo
    arn:               544c887879c38e5d0afcaf8b4f8f348e#demo#1
    version:           1
    description:
    compatibleRuntime:
      - nodejs12
      - nodejs10
      - nodejs8
      - nodejs6
      - python3
      - python2.7

layer download 命令

layer download 命令,是用户下载指定层版本的命令。

当执行命令layer download -h/layer download --help时,可以获取帮助文档。

参数解析

参数全称参数缩写Yaml 模式下必填Cli 模式下必填参数含义
region-选填必填地区,取值范围:cn-hangzhou, cn-beijing, cn-beijing, cn-hangzhou, cn-shanghai, cn-qingdao, cn-zhangjiakou, cn-huhehaote, cn-shenzhen, cn-chengdu, cn-hongkong, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-5, ap-northeast-1, eu-central-1, eu-west-1, us-west-1, us-east-1, ap-south-1
layer-name-必填必填层名称
version-id-必填必填层版本

当前命令还支持部分全局参数(例如-a/--access, --debug等),详情可参考 Serverless Devs 全局参数文档

操作案例

  • 有资源描述文件(Yaml)时,可以直接执行s layer download --layer-name layerName --version-id versionId下载层版本的代码包;
  • 纯命令行形式(在没有资源描述 Yaml 文件时),需要指定服务所在地区,例如s cli fc layer download --region cn-hangzhuo --layer-name demo --version-id 1

上述命令的执行结果示例:

✔ Downloading: [/189******629/test/7d954393-c5a2-4519-94de-d1a4c9e0611f] 144073/144073 100.00% # 下载的进度条
helloworld: /Users/test/.s/cache/layers/189******629-cn-shenzhen-test/8.zip  # 代码包下载的地址

权限与策略说明

  • layer listlayer versionlayer detail 命令所需要的权限策略: AliyunFCReadOnlyAccess

  • layer publish 命令所需要的权限策略:

    {
      'Version': '1',
      'Statement':
        [
          {
            'Action': 'fc:CreateLayerVersion',
            'Effect': 'Allow',
            'Resource': 'acs:fc:<region>:<account-id>:layers/<layerName>/versions/*',
          },
        ],
    }
    
在 GitHub 上编辑本页面 更新时间: Wed, Aug 10, 2022