本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
sam init
使用初始化无服务器应用程序Amazon SAM。模板。该模板为您提供了文件夹结构Amazon Lambda并连接到事件源,例如 API、Amazon Simple Storage Service (Amazon S3) 桶或 Amazon DynamoDB 表等事件源。此应用程序包括入门并最终将其扩展到生产规模应用程序所需的所有内容。
对于某些示例应用程序,您可以选择应用程序的软件包类型,Zip要么Image. 有关 Lambda 包类型的更多信息,请参阅Lambda 部署程序包中的Amazon Lambda开发人员指南.
使用方法:
sam init [OPTIONS]
与Amazon 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
选项:
| 选项 | 描述 |
|---|---|
-a, --architecture [x86_64 | arm64] |
应用程序 Lambda 函数的指令集架构。指定其中之一 |
--app-template TEXT |
要使用的托管应用程序模板的标识符。如果您不能确定,请致电 如果需要此参数: 此参数仅在中提供Amazon SAMCLI 版本 0.30.0 及更高版本。使用较早版本指定此参数会导致错误。 |
--base-image [amazon/nodejs16.x-base | amazon/nodejs14.x-base | amazon/nodejs12.x-base |
amazon/python3.9-base | amazon/python3.8-base |
amazon/python3.7-base | amazon/python3.6-base |
amazon/ruby2.7-base | amazon/go1.x-base | amazon/java11-base |
amazon/java8.al2-base | amazon/java8-base | amazon/dotnet6-base | amazon/dotnet5.0-base | amazon/dotnetcore3.1-base ] |
应用程序的基本映像。此选项仅适用于包装类型为 如果需要此参数: |
--config-file PATH |
配置文件的路径和文件名,其中包含要使用的默认参数值。默认值为项目目录根目录中的 “samconfig.toml”。有关配置文件的详细信息,请参阅 Amazon SAM CLI 配置文件。 |
--config-env TEXT |
指定配置文件中要使用的默认参数值的环境名称。默认值为 “默认值”。有关配置文件的详细信息,请参阅 Amazon SAM CLI 配置文件。 |
-d, --dependency-manager [gradle | mod | maven | bundler | npm | cli-package |
pip] |
Lambda 运行时的依赖关系管理器。 |
--debug |
打开调试日志记录以打印调试消息Amazon SAMCLI 生成,并显示时间戳。 |
--extra-content |
覆盖模板中的任何自定义参数cookiecutter.json例如,配置,{"customParam1": "customValue1",
"customParam2":"customValue2"} |
-h, --help |
显示此消息并退出。 |
-l, --location TEXT |
模板或应用程序位置(Git、Mercurial、HTTP/HTTPS、.zip 文件、路径)。 如果需要此参数: 对于 Git 仓库,您必须使用仓库根目录的位置。 对于本地路径,模板必须位于 .zip 文件或Cookiecutter |
-n, --name TEXT |
要作为目录生成的项目的名称。 如果需要此参数: |
--no-input |
禁用 Cookiecutter 提示并接受模板配置中定义的 vcfdefault 值。 |
--no-interactive |
禁用初始化参数的交互式提示,如果缺少任何必需值,则失败。 |
--no-tracing |
不要追加Tracing: Active转到的全局部分Amazon SAM模板并禁用关于跟踪的交互式提示。有关模板全局部分的更多信息,请参阅的 “全局变量” 部分Amazon SAM模板 |
-o, --output-dir PATH |
输出初始化应用程序的位置。 |
--package-type [Zip | Image] |
示例应用程序的软件包类型。Zip创建 .zip 文件存档,并Image创建容器映像。 |
-r, --runtime [ruby2.7 | java8 | java8.al2 | java11 |
nodejs12.x | nodejs14.x | nodejs16.x | dotnet6 | dotnet5.0 | dotnetcore3.1 | python3.9 | python3.8 |
python3.7 | python3.6 | go1.x] |
应用程序的 Lambda 运行时。此选项仅适用于包装类型为 如果需要此参数: |
--tracing |
附加Tracing: Active转到的全局部分Amazon SAM。模板。有关模板全局部分的更多信息,请参阅的 “全局变量” 部分Amazon SAM模板 |