AWS Lambda 有 LocalStack 支撑 - AWS 适用于 VS Code 的工具包

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS Lambda 有 LocalStack 支撑

在中的 LocalStack 支持下构建、测试和调试您的无服务器应用程序。 AWS Toolkit for Visual Studio Code LocalStack 是一款 AWS 云端仿真器,允许对无服务器应用程序进行本地测试。

有关的其他信息 AWS Lambda,请参阅《AWS Lambda开发人员指南》。要了解更多信息 LocalStack,请访问他们的网站LocalStack

先决条件

以下是在 VS Code LocalStack 中使用的先决条件。

注意

LocalStack CLI 是在安装过程中安装的,但如果您更喜欢其他版本的 LocalStack CLI,则最低要求版本为 4.8.0

  • 需要一个 LocalStack Web 应用程序帐户才能访问免费和付费 LocalStack 套餐的所有可用功能。 LocalStack 社区版无需帐户即可使用。

  • 需要 LocalStack 在 VS Code 中使用 Docker。有关 Docker LocalStack 要求的更多信息,请参阅文档中的 LocalStack Docker 镜像主题。 LocalStack

  • 推荐: AWS Command Line Interface (AWS CLI) 可帮助您在模拟云环境中使用服务。

正在安装 LocalStack

要安装 LocalStack 免费和付费分层版本,请完成以下步骤。

注意

有关如何设置 LocalStack 社区版的说明,请参阅本主题设置 LocalStack部分中的LocalStack社区内容。

  1. 在 AWS 工具包中,展开 “应用程序生成器” 资源管理器。

  2. 选择 Open Walk throu gh 按钮,在 VS Code 编辑器中打开开始构建应用程序演练选项卡。

  3. 在演练中,选择 “安装” LocalStack 以启动 VS Code 中的 LocalStack 安装过程。

设置 LocalStack

安装 VS Code LocalStack 扩展程序后,在需要安装时,您可能会看到以下指示器之一:

  • 默认情况下,在 IDE 左下角的 VS Code 状态栏中, LocalStack 状态为红色。

  • VS Code 会提示你进行设置 LocalStack。

有两种类型的设置和配置 LocalStack,具体取决于 LocalStack 你使用的版本。以下选项卡部分描述了每个 LocalStack 设置过程。

注意

LocalStack 的免费和付费套餐版本需要身份验证令牌。 LocalStack有关 LocalStack 定价的具体信息,请参阅他们的 “选择您的套餐” 定价指南。

有两种设置方式 LocalStack。

  • 从 VS Code 安装 LocalStack 到入门提示中,选择设置按钮。

  • 从 VS Code 状态栏中,选择 LocalStack 状态图标 LocalStack 以打开安装程序开始提示符,然后选择设置按钮。

在安装过程中,系统将执行以下步骤:

  1. 安装 C LocalStack LI。

  2. 检查您是否有 LocalStack 账户。

  3. 如果您有 LocalStack 帐户,系统会引导您在默认的 Web 浏览器中完成身份验证过程。同样,如果您没有 LocalStack 帐户,系统会在身份验证过程之前指导您完成帐户设置。

设置完成后 LocalStack ,VS Code LocalStack 状态栏中的状态会更新。

注意

如果您尚未为创建 AWS 配置文件 LocalStack,则在 LocalStack 设置过程中会自动为您创建一个新的配置文件。

的 LocalStack 社区版可以免费使用,不需要您注册帐户,它使用不需要许可证的 Docker 镜像运行。有关 LocalStack 社区版的更多详细信息,请参阅LocalStack 社区图片文档。以下各节介绍在 VS Code 中使用 LocalStack 社区版所需的先决条件和基本设置。

启动新实例

要启动新的 LocalStack 社区实例,请完成以下步骤。

注意

以下示例在端口 4566 LocalStack 上启动一个容器实例。如果指定不同的端口值,则必须更新在配置 AWS CLI 和 AWS 工具包部分的过程中指定的端口值。

  1. 在 VS Code 中,按键打开 VS Code 终端ctrl + `(backtick)

  2. 在终端中输入以下内容。

    Mac:

    docker run -d --name localstack_main \ >> -p 4566:4566 \ >> -v /var/run/docker.sock:/var/run/docker.sock \ >> localstack/localstack

    Windows:

    docker run -d --name localstack_main ` >> -p 4566:4566 ` >> -v /var/run/docker.sock:/var/run/docker.sock ` >> localstack/localstack
  3. 该过程完成后,终端会使用您的 Docker 实例的状态进行更新。

的这个容器化实例 LocalStack 允许您访问您在下载过程中指定的 AWS 服务。

为 LocalStack 和 Docker 配置 CLI。

要在 Docker LocalStack 中配置要使用的 AWS CLI 和 AWS Toolkit,请完成以下步骤来设置新的配置文件:

  1. 在 VS Code 中,按键打开 VS Code 终端ctrl + `(backtick)

  2. 在终端中输入以下内容。

    ~/.aws/credentials [localstack] aws_access_key_id = test aws_secret_access_key = test ~/.aws/config [profile localstack] region = us-east-1 output = json endpoint_url = http://localhost:4566 [default localstack endpoint]
  3. AWS Toolkit 会检测您的 LocalStack 个人资料并更新连接状态菜单。

设置完成后,从状态栏的 LocalStack 配置 AWS 文件部分选择您的个人资料后,您的 LocalStack 资源便会在资源 AWS 管理器中可见。此外,您可以在 VS Code 终端的 “输出” 选项卡中查看 LocalStack 日志。

从 LocalStack VS 代码开始

你可以开始 LocalStack 使用以下任何一种方法:

LocalStack 从 VS 代码状态栏开始
  1. 在 VS Code 中,导航到状态栏,然后选择开始 LocalStack按钮启动 LocalStack。

  2. 成功启动后,VS Code 状态栏会 LocalStack 更新。

LocalStack 从 VS Code 命令面板开始
  1. 在 VS Code 中,按 Cmd + Shift + P (Mac) 或 Control + Shift + P (Windows) 打开命令面板

  2. 命令面板中,Start LocalStack在搜索栏中输入,并在结果中填充时从列表中进行选择。

  3. 成功启动后,VS Code 状态栏会 LocalStack 更新。

LocalStack 从 VS Code 终端开始
  1. 在 VS Code 中,按键打开 VS Code 终端ctrl + `(backtick)

  2. 在 VS Code 终端中输入 localstack start CLI 命令。

  3. 成功启动后,VS Code 状态栏会 LocalStack 更新。

构建示例无服务器应用程序

要开始 LocalStack 在 VS Code 中使用,您需要一个示例无服务器应用程序。如果您的 AWS 账户中已有应用程序,则可以使用将其部署到本地, LocalStack 也可以使用 AWS Serverless Land 创建新应用程序。

有关在 AWS 工具包中使用 Serverless Land 创建应用程序的更多信息,请参阅本用户指南中的使用 AWS 无服务器土地主题。有关 Serverless Land 的详细信息,请参阅 Serverless Land 网络应用程序主登录页面。

使用测试和调试 Lambda 函数 LocalStack

在 LocalStack VS Code 扩展中测试和调试 Lambda 函数与使用部署到云端的 AWS 函数类似。主要区别在于,您的 AWS Toolkit 实例必须使用您的 LocalStack 账户进行身份验证才能部署和调试函数 LocalStack。

注意

本节中描述的测试和调试功能不适用于 LocalStack 社区版。

要 LocalStack 在 VS Code 中使用,请在 AWS 工具包中连接到您的 LocalStack 个人资料。当你的 LocalStack 个人资料处于活动状态时,VS Code 状态栏会显示 AWS:profile: localstack(自定义端点),带有复选标记。

有关在 AWS 工具包中使用 Lambda 函数的详细信息,请参阅本用户指南中的使用 AWS Lambda 函数主题。