

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

# AWS Lambda 透過 LocalStack 支援
<a name="lambda-localstack"></a>

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

如需 的詳細資訊 AWS Lambda，請參閱 [AWS Lambda](https://docs.aws.amazon.com//lambda/latest/dg/welcome.html)*開發人員指南*。若要進一步了解 LocalStack，請造訪其網站 [LocalStack](https://www.localstack.cloud/)。

## 先決條件
<a name="prereq"></a>

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

**注意**  
LocalStack CLI 是在設定程序期間安裝，但如果您偏好不同版本的 LocalStack CLI，則所需的最低版本為 *4.8.0。*
+ 需要 LocalStack Web 應用程式帳戶才能存取免費和付費 LocalStack 方案可用的所有功能。LocalStack 社群版本可在沒有 帳戶的情況下使用。
+ 在 VS 程式碼中使用 LocalStack 需要 Docker。如需 Docker LocalStack 需求的詳細資訊，請參閱 LocalStack 文件中的 LocalStack [Docker 映像](https://docs.localstack.cloud/aws/capabilities/config/docker-images/)主題。
+ **建議：**The AWS Command Line Interface (AWS CLI) 可協助您在模擬雲端環境中使用 服務。

## 安裝 LocalStack
<a name="install"></a>

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

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

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

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

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

## 設定 LocalStack
<a name="setup"></a>

安裝適用於 VS Code 的 LocalStack 擴充功能後，您可能會在需要設定時看到下列其中一個指標：
+ 在預設位於 IDE 左下角的 VS 程式碼狀態列中，LocalStack 狀態為紅色。
+ VS 程式碼會提示您設定 LocalStack。

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

**注意**  
LocalStack 免費和付費方案版本需要 LocalStack 驗證權杖。如需 LocalStack 定價的特定資訊，請參閱他們的[選擇您的計劃](https://www.localstack.cloud/pricing)定價指南。

### LocalStack 免費和付費方案
<a name="free-paid"></a>

設定 LocalStack 的方式有兩種。
+ 從 VS 程式碼**設定 LocalStack 開始**提示，選擇**設定**按鈕。
+ 從 VS 程式碼狀態列中，選擇 LocalStack 狀態圖示以開啟**設定 LocalStack 以開始使用**提示，然後選擇**設定**按鈕。

在設定期間，系統會執行下列步驟：

1. 安裝 LocalStack CLI。

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

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

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

**注意**  
如果您尚未建立 LocalStack 的 AWS 設定檔，則會自動為您建立新的設定檔，做為 LocalStack 設定程序的一部分。

### LocalStack 社群
<a name="community"></a>

LocalStack 的 Community Edition 是免費的，不需要您註冊帳戶，它從不需要授權的 Docker 映像執行。如需 LocalStack Community Edition 的其他詳細資訊，請參閱 [LocalStack Community 映像](https://docs.localstack.cloud/references/docker-images/)文件。下列各節說明在 VS Code 中使用 LocalStack 社群版本所需的先決條件和基本設定。

**啟動新的執行個體**

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

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

1. 從 VS 程式碼中，按 開啟 VS 程式碼終端機**ctrl \$1 `(backtick)**。

1. 在終端機中輸入以下內容。

   **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
   ```

1. 程序完成時，終端機會更新 Docker 執行個體的狀態。

LocalStack 的這個容器化執行個體可讓您存取您在下載程序期間指定的 AWS 服務。

**為 LocalStack 和 Docker 設定 CLI。**

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

1. 從 VS 程式碼中，按 開啟 VS 程式碼終端機**ctrl \$1 `(backtick)**。

1. 在終端機中輸入以下內容。

   ```
   ~/.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]
   ```

1. Toolkit 會 AWS 偵測 LocalStack 設定檔並更新連線狀態選單。

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

## 在 VS 程式碼中啟動 LocalStack
<a name="w2aac17c43c17c13"></a>

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

**從 VS 程式碼狀態列啟動 LocalStack**

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

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

**從 VS Code **Command Palette** 啟動 LocalStack**

1. 從 VS 程式碼中，按 **Cmd \$1 Shift \$1 P**(Mac) 或 **Control \$1 Shift \$1 P**(Windows) **開啟命令調色盤**。

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

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

**從 VS 程式碼終端機啟動 LocalStack**

1. 從 VS 程式碼中，按 開啟 VS 程式碼終端機**ctrl \$1 `(backtick)**。

1. 從 VS 程式碼終端機，輸入 **localstack start** CLI 命令。

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

## 建置範例無伺服器應用程式
<a name="serverless"></a>

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

如需在 Toolkit AWS 中使用無伺服器土地建立應用程式的詳細資訊，請參閱《 使用者指南》中的[使用無 AWS 伺服器土地](https://docs.aws.amazon.com//toolkit-for-vscode/latest/userguide/serverlessland-overview.html)主題。如需 Serverless Land 的詳細資訊，請參閱 [Serverless Land](https://serverlessland.com/) Web 應用程式主要登陸頁面。

## 使用 LocalStack 測試和偵錯 Lambda 函數
<a name="test-debug"></a>

在 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 函數](https://docs.aws.amazon.com//toolkit-for-vscode/latest/userguide/remote-lambda.html)主題。