本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
sam init
使用 AWS SAM 模板初始化无服务器应用程序。该模板为您的 AWS Lambda 函数提供文件夹结构,并连接到事件源,如 APIs、Amazon Simple Storage Service (Amazon S3) 存储桶或 Amazon DynamoDB 表。此应用程序包括您在开始使用和最终将它扩展到生产规模应用程序所需的一切内容。
对于某些示例应用程序,您可以选择应用程序的程序包类型:Zip
或 Image
。 有关 Lambda 程序包类型的更多信息,请参阅 中的 Lambda 部署程序包。AWS Lambda Developer Guide
用量:
sam init [OPTIONS]
对于 AWS SAM 版本 0.30.0 或更高版本,您可以使用两种模式之一初始化您的应用程序:1 个交互式工作流程或 2) 提供所有必需参数。
-
交互式工作流程: 通过交互式初始化工作流程,您可以输入:1) 您的项目名称、首选运行时和模板文件,或 2) 自定义模板的位置。
-
提供参数:提供所有必需的参数。
如果您提供了所需参数的子集,系统会提示您输入所需的其他信息。
示例:
Initializes a new SAM project with required parameters passed as parameters sam init --runtime python3.7 --dependency-manager pip --app-template hello-world --name sam-app Initializes a new SAM project using custom template in a Git/Mercurial repository # gh being expanded to github url sam init --location gh:aws-samples/cookiecutter-aws-sam-python sam init --location git+ssh://git@github.com/aws-samples/cookiecutter-aws-sam-python.git sam init --location hg+ssh://hg@bitbucket.org/repo/template-name # Initializes a new SAM project using custom template in a Zipfile sam init --location /path/to/template.zip sam init --location https://example.com/path/to/template.zip # Initializes a new SAM project using cookiecutter template in a local path sam init --location /path/to/template/folder
选项:
选项 | 描述 |
---|---|
--no-interactive |
禁用针对 init 参数的交互式提示,如果缺少任何必需值,则提示失败。 |
-l, --location TEXT |
模板或应用程序位置(Git、Mercurial、HTTP/HTTPS、.zip 文件、路径)。 如果指定了 对于 Git 存储库,您必须使用存储库的根位置。 对于本地路径,模板必须采用 .zip 文件或 Cookiecuter |
--package-type [Zip | Image] |
示例应用程序的程序包类型。Zip 创建 .zip 文件存档,Image 创建容器映像。
|
-r, --runtime [python2.7 | ruby2.5 | ruby2.7 | java8 | python3.7 | dotnetcore2.0 |
nodejs10.x | nodejs12.x | dotnetcore2.1 | dotnetcore1.0 | python3.6 |
go1.x] |
您的应用程序的 Lambda 运行时。此选项仅在程序包类型为 如果指定了 |
--base-image [amazon/nodejs12.x-base | amazon/nodejs10.x-base |
amazon/python3.8-base | amazon/python3.7-base | amazon/python3.6-base | amazon/python2.7-base
| amazon/ruby2.7-base | amazon/ruby2.5-base | amazon/go1.x-base | amazon/java11-base
|
amazon/java8.al2-base | amazon/java8-base | amazon/dotnetcore3.1-base |
amazon/dotnetcore2.1-base] |
您的应用程序的基本映像。此选项仅在程序包类型为 如果指定了 |
-d, --dependency-manager [gradle | mod | maven | bundler | npm | cli-package |
pip] |
运行时的依赖项管理器。Lambda |
-o, --output-dir PATH |
初始化的应用程序输出的位置。 |
-n, --name TEXT |
要生成为目录的项目的名称。 如果指定了 |
--app-template TEXT |
要使用的托管应用程序模板的标识符。如果不确定,请调用 如果指定了 此参数仅在 AWS SAM CLI 版本 0.30.0 及更高版本中可用。使用早期版本指定此参数会导致错误。 |
--no-input |
禁用 Cookiecuter 提示并接受模板配置中定义的 vcfdefault 值。 |
--extra-content |
覆盖模板的 cookiecutter.json 配置中的任何自定义参数,例如,{"customParam1": "customValue1",
"customParam2":"customValue2"} |
--config-file PATH |
包含要使用的默认参数值的配置文件的路径和文件名。默认值为项目根目录中的“samconfig.toml”。有关配置文件的详细信息,请参阅 AWS SAM CLI 配置文件。 |
--config-env TEXT |
环境名称,用于指定配置文件中要使用的默认参数值。默认值为“default”。有关配置文件的详细信息,请参阅 AWS SAM CLI 配置文件。 |
--debug |
打开调试日志记录以输出 AWS SAM CLI 生成的调试消息,并显示时间戳。 |
-h, --help |
显示此消息并退出。 |