AWS Lambda 透過 LocalStack 支援 - AWS 適用於 VS 程式碼的工具組

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Lambda 透過 LocalStack 支援

在 中使用 LocalStack 支援建置、測試和偵錯無伺服器應用程式 AWS Toolkit for Visual Studio Code。LocalStack 是一種 AWS 雲端模擬器,允許對無伺服器應用程式進行本機測試。

如需 的詳細資訊 AWS Lambda,請參閱 AWS Lambda開發人員指南。若要進一步了解 LocalStack,請造訪其網站 LocalStack

先決條件

以下是在 VS 程式碼中使用 LocalStack 的先決條件。

注意

LocalStack CLI 是在設定程序期間安裝,但如果您偏好不同版本的 LocalStack CLI,則所需的最低版本為 4.8.0。

  • 需要 LocalStack Web Application 帳戶才能存取免費和付費 LocalStack 方案可用的所有功能。LocalStack 社群版本可在沒有 帳戶的情況下使用。

  • 在 VS 程式碼中使用 LocalStack 需要 Docker。如需 Docker LocalStack 需求的詳細資訊,請參閱 LocalStack 文件中的 LocalStack Docker 映像主題。

  • 建議:The AWS Command Line Interface (AWS CLI) 可協助您在模擬雲端環境中使用 服務。

安裝 LocalStack

若要安裝 LocalStack 免費和付費分層版本,請完成下列步驟。

注意

如需如何設定 LocalStack Community Edition 的說明,請參閱本主題之設定 LocalStack 一節中的 LocalStack Community 內容。 LocalStack

  1. 從 AWS Toolkit 中,展開 APPLICATION BUILDER Explorer。

  2. 選擇開啟逐步解說按鈕,在 VS 程式碼編輯器中開啟開始建置應用程式逐步解說索引標籤。

  3. 從逐步解說中,選擇安裝 LocalStack 以啟動 VS Code 中的 LocalStack 安裝程序。

設定 LocalStack

安裝適用於 VS Code 的 LocalStack 擴充功能後,您可能會在需要設定時看到下列其中一個指標:

  • 在預設位於 IDE 左下角的 VS 程式碼狀態列中,LocalStack 狀態為紅色。

  • VS 程式碼會提示您設定 LocalStack。

LocalStack 的設定和組態有兩種類型,取決於您使用的 LocalStack 版本。下列標籤區段說明每個 LocalStack 設定程序。

注意

LocalStack 免費和付費方案版本需要 LocalStack 驗證權杖。如需 LocalStack 定價的特定資訊,請參閱其選擇您的計劃定價指南。

設定 LocalStack 的方式有兩種。

  • 從 VS 程式碼設定 LocalStack 開始提示,選擇設定按鈕。

  • 從 VS 程式碼狀態列中,選擇 LocalStack 狀態圖示以開啟設定 LocalStack 以開始使用提示,然後選擇設定按鈕。

在設定期間,系統會執行下列步驟:

  1. 安裝 LocalStack CLI。

  2. 檢查您是否擁有 LocalStack 帳戶。

  3. 如果您有 LocalStack 帳戶,系統會引導您完成預設 Web 瀏覽器中的身分驗證程序。同樣地,如果您沒有 LocalStack 帳戶,系統會在身分驗證程序之前引導您完成帳戶設定。

設定 LocalStack 後,VS Code 狀態列中的 LocalStack 狀態會更新。

注意

如果您尚未建立 LocalStack 的 AWS 設定檔,系統會自動為您建立新的設定檔,做為 LocalStack 設定程序的一部分。

LocalStack 的 Community Edition 是免費的,不需要您註冊 帳戶,它從不需要授權的 Docker 映像執行。如需 LocalStack Community Edition 的其他詳細資訊,請參閱 LocalStack Community 映像文件。下列各節說明在 VS Code 中使用 LocalStack 社群版本所需的先決條件和基本設定。

啟動新的執行個體

若要啟動 LocalStack Community 的新執行個體,請完成下列程序。

注意

下列範例會在連接埠 4566 上啟動 LocalStack 的容器執行個體。如果您指定不同的連接埠值,則必須更新設定 AWS CLI 和 AWS Toolkit 區段中程序中指定的連接埠值。

  1. 從 VS 程式碼中,按 開啟 VS 程式碼終端機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。

若要設定 AWS CLI 和 AWS Toolkit 在 Docker 中使用 LocalStack,請完成下列步驟來設定新的設定檔:

  1. 從 VS 程式碼中,按 開啟 VS 程式碼終端機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. Toolkit 會 AWS 偵測 LocalStack 設定檔並更新連線狀態選單。

設定後,從狀態列的設定檔區段中選擇 LocalStack AWS 設定檔,即可在 AWS 瀏覽器中顯示 LocalStack 資源。此外,您可以在 VS 程式碼終端機的輸出索引標籤中檢視 LocalStack 日誌。

在 VS 程式碼中啟動 LocalStack

您可以使用下列任一方法啟動 LocalStack:

從 VS 程式碼狀態列啟動 LocalStack
  1. 從 VS 程式碼導覽至狀態列,然後選擇啟動 LocalStack 按鈕以啟動 LocalStack。

  2. LocalStack 成功啟動時,VS 程式碼狀態列會更新。

從 VS Code Command Palette 啟動 LocalStack
  1. 從 VS 程式碼中,按 Cmd + Shift + P(Mac) 或 Control + Shift + P(Windows) 開啟命令調色盤

  2. 命令面板中,Start LocalStack在搜尋列中輸入 ,並在填入結果時從清單中選擇它。

  3. LocalStack 成功啟動時,VS 程式碼狀態列會更新。

從 VS 程式碼終端機啟動 LocalStack
  1. 從 VS 程式碼中,按 開啟 VS 程式碼終端機ctrl + `(backtick)

  2. 從 VS 程式碼終端機,輸入 localstack start CLI 命令。

  3. LocalStack 成功啟動時,VS 程式碼狀態列會更新。

建置範例無伺服器應用程式

若要開始在 VS Code 中使用 LocalStack,您需要範例無伺服器應用程式。如果您的 AWS 帳戶中已有現有的應用程式,您可以使用 LocalStack 將其部署到本機,或使用 AWS Serverless Land 建立新的應用程式。

如需在 Toolkit AWS 中使用無伺服器土地建立應用程式的詳細資訊,請參閱《 使用者指南》中的使用無 AWS 伺服器土地主題。如需 Serverless Land 的詳細資訊,請參閱 Serverless Land Web 應用程式主要登陸頁面。

使用 LocalStack 測試和偵錯 Lambda 函數

在 LocalStack VS Code 延伸模組中測試和偵錯 Lambda 函數類似於使用部署到 AWS 雲端的函數。主要差別是您的 AWS Toolkit 執行個體必須使用 LocalStack 帳戶進行身分驗證,才能使用 LocalStack 部署和偵錯函數。

注意

本節所述的測試和偵錯功能不適用於 LocalStack Community Edition。

若要在 VS 程式碼中使用 LocalStack,請連線至 Toolkit 中的 LocalStack AWS 設定檔。當您的 LocalStack 設定檔處於作用中狀態時,VS 程式碼狀態列會顯示 AWS: profile:localstack (自訂端點) 和核取記號。

如需在 AWS Toolkit 中使用 Lambda 函數的詳細資訊,請參閱本使用者指南中的使用 AWS Lambda 函數主題。