本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 .NET Core CLI 部署 Amazon Lambda 项目
Amazon Toolkit for Visual Studio 包括 Visual Studio 的 Amazon Lambda .NET 核心项目模板。您可以使用 .NET Core 命令行界面(CLI)部署 Visual Studio 中构建的 Lambda 函数。
先决条件
在使用.NET Core CLI 部署 Lambda 函数之前,您必须满足以下先决条件:
-
确保安装了 Visual Studio 2015 更新 3。
-
将 .NET Core CLI 设置为可与 Lambda 配合使用。有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的 .NET Core CLI。
-
安装了 Toolkit for Visual Studio。有关更多信息,请参阅 正在安装 Amazon Toolkit for Visual Studio。
相关 主题
使用 .NET Core CLI 部署 Lambda 函数时,以下相关主题可能会有所帮助:
-
有关 Lambda 函数的更多信息,请参阅什么是 Lambda Amazon ? 在《Amazon Lambda 开发人员指南》中。
-
有关在 Visual Studio 中创建 Lambda 函数的信息,请参阅 Amazon Lambda。
-
有关 Microsoft .NET Core 的更多信息,请参阅 Microsoft 在线文档中的 .NET Core
。
列出可通过 .NET Core CLI 使用的 Lambda 命令
要列出可通过 .NET Core CLI 使用的 Lambda 命令,请执行以下操作。
-
打开命令提示符窗口并导航到包含 Visual Studio .NET Core Lambda 项目的文件夹。
-
输入
dotnet lambda --help
。
C:\Lambda\AWSLambda1\AWSLambda1>dotnet lambda --help Amazon Lambda Tools for .NET Core functions Project Home: https://github.com/aws/aws-lambda-dotnet . Commands to deploy and manage Lambda functions: . deploy-function Deploy the project to Lambda invoke-function Invoke the function in Lambda with an optional input list-functions List all of your Lambda functions delete-function Delete a Lambda function get-function-config Get the current runtime configuration for a Lambda function update-function-config Update the runtime configuration for a Lambda function . Commands to deploy and manage Amazon serverless applications using Amazon CloudFormation: . deploy-serverless Deploy an Amazon serverless application list-serverless List all of your Amazon serverless applications delete-serverless Delete an Amazon serverless application . Other Commands: . package Package a Lambda project into a .zip file ready for deployment . To get help on individual commands, run the following: dotnet lambda help <command>
从 .NET Core CLI 发布 .NET Core Lambda 项目
以下说明假设你已在 Visual Studio 中创建了一个 Amazon Lambda .NET 核心函数。
-
打开命令提示符窗口并导航到包含 Visual Studio .NET Core Lambda 项目的文件夹。
-
输入
dotnet lambda deploy-function
。 -
当系统提示时,输入要部署的函数的名称。它可以是新名称或现有函数的名称。
-
出现提示时,输入 Amazon 区域(您的 Lambda 函数将部署到的区域)。
-
当系统提示时,选择或创建 Lambda 将在执行函数时代入的 IAM 角色。
成功完成后,将显示消息 New Lambda function created (新 Lambda 函数已创建)。
C:\Lambda\AWSLambda1\AWSLambda1>dotnet lambda deploy-function Executing publish command ... invoking 'dotnet publish', working folder 'C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish' ... publish: Publishing AWSLambda1 for .NETCoreApp,Version=v1.0 ... publish: Project AWSLambda1 (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing ... publish: Compiling AWSLambda1 for .NETCoreApp,Version=v1.0 ... publish: Compilation succeeded. ... publish: 0 Warning(s) ... publish: 0 Error(s) ... publish: Time elapsed 00:00:01.2479713 ... publish: ... publish: publish: Published to C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish ... publish: Published 1/1 projects successfully Zipping publish folder C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish to C:\Lambda\AWSLambda1\AWSLamb da1\bin\Release\netcoreapp1.0\AWSLambda1.zip Enter Function Name: (Amazon Lambda function name) DotNetCoreLambdaTest Enter Amazon Region: (The region to connect to Amazon services) us-west-2 Creating new Lambda function Select IAM Role that Lambda will assume when executing function: 1) lambda_exec_LambdaCoreFunction 2) *** Create new IAM Role *** 1 New Lambda function created
如果您部署现有函数,则部署函数仅要求提供 Amazon 区域。
C:\Lambda\AWSLambda1\AWSLambda1>dotnet lambda deploy-function Executing publish command Deleted previous publish folder ... invoking 'dotnet publish', working folder 'C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish' ... publish: Publishing AWSLambda1 for .NETCoreApp,Version=v1.0 ... publish: Project AWSLambda1 (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation. ... publish: publish: Published to C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish ... publish: Published 1/1 projects successfully Zipping publish folder C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish to C:\Lambda\AWSLambda1\AWSLamb da1\bin\Release\netcoreapp1.0\AWSLambda1.zip Enter Function Name: (Amazon Lambda function name) DotNetCoreLambdaTest Enter Amazon Region: (The region to connect to Amazon services) us-west-2 Updating code for existing function
在部署 Lambda 函数后,便可使用该函数。有关更多信息,请参阅如何使用 Amazon Lambda 的示例。
Lambda 会自动为您监控 Lambda 函数,并通过亚马逊报告指标。 CloudWatch要监控您的 Lambda 函数并对其进行故障排除,请参阅使用亚马逊对 Lambda Amazon 函数进行故障排除和监控。 CloudWatch