

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

# AWS Toolkit for Visual Studio - 在 Elastic Beanstalk 上使用 .Net Core
<a name="dotnet-toolkit-linux"></a>

本主題說明如何使用 AWS Toolkit for Visual Studio執行下列工作：
+ 使用 Visual Studio 範本建立 ASP.NET Core Web 應用程式。
+ 建立 Elastic Beanstalk Amazon Linux 環境。
+ 將 ASP.NET Core Web 應用程式部署到新的 Amazon Linux 環境。

本主題也探討如何使用 AWS Toolkit for Visual Studio 來管理 Elastic Beanstalk 應用程式環境，並監控應用程式的運作狀態。

 AWS Toolkit for Visual Studio 是 Visual Studio IDE 的外掛程式。使用此工具組，您可以在 Visual Studio 環境中工作時，在 Elastic Beanstalk 部署和管理應用程式。

**Topics**
+ [先決條件](#dotnet-toolkit-linux-core-tutorial-prereqs)
+ [建立新的應用程式專案](#dotnet-toolkit-linux-core-tutorial-create-project)
+ [建立 Elastic Beanstalk 環境並部署您的應用程式](#dotnet-toolkit-linux-core-tutorial-create-env-and-deploy)
+ [終止環境](#dotnet-toolkit-linux-core-tutorial-terminate-env)
+ [管理您的 Elastic Beanstalk 應用程式環境](create_deploy_NET-linux.managing.md)
+ [監控應用程式運作狀態](create_deploy_NET-linux.healthstatus.md)

## 先決條件
<a name="dotnet-toolkit-linux-core-tutorial-prereqs"></a>

在開始本教學課程之前，您需要安裝 AWS Toolkit for Visual Studio。如需說明，請參閱[設定 AWS Toolkit for Visual Studio](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/getting-set-up.html)。

如果您之前從未使用過工具組，安裝工具組後需要做的第一件事是向工具組註冊您的 AWS 登入資料。如需此方面的詳細資訊，請參閱[提供 AWS 登入資料](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/credentials.html)。

## 建立新的應用程式專案
<a name="dotnet-toolkit-linux-core-tutorial-create-project"></a>

如果 Visual Studio 中沒有 .NET Core 應用程式專案，您也可以輕鬆使用 Visual Studio 的一個專案範本建立專案。

**若要建立新的 ASP.NET Web 應用程式專案**

1. 在 Visual Studio 中，於 **File (檔案)** 功能表中選擇 **New (新增)**，然後選擇 **Project (專案)**。

1. 在 **Create a new project (建立新專案)** 對話方塊中，選取 **C\$1**，選取 **Linux**，然後選取 **Cloud (雲端)**。

1. 從顯示的專案範本清單中選取 **ASP.NET Core Web Application (ASP.NET Core Web 應用程式)**，然後選取 **Next (下一步)**。
**注意**  
如果專案範本中未列出的 **ASP.NET Core Web Application (ASP.NET Core Web 應用程式)**，您可以在 Visual Studio 中安裝該範本。  
捲動至範本清單的底部，然後選取位於範本清單下的 **Install more tools and features (安裝更多工具和功能)** 連結。
如果系統提示您允許 Visual Studio 應用程式變更您的裝置，請選取 **Yes (是)**。
選擇 **Workloads (工作負載)** 標籤，然後選取 **ASP.NET and web development (ASP.NET 和 Web 開發)。**
選取 **Modify (修改)** 按鈕。**Visual Studio Installer 安裝程式**會安裝專案範本。
安裝程式完成後，結束面板返回您上次在 Visual Studio 離開的位置。

1. 在 **Configure your new project (配置新專案)** 對話方塊中，輸入**專案名稱**。**解決方案名稱**會預設使用您的專案名稱。接下來，選擇 **Create (建立)**。

1. 在 **Create a new ASP.NET Core web application (建立新的 ASP.NET Core Web 應用程式)** 對話方塊中，選取 **.NET Core**，然後選取 **ASP.NET Core 3.1**。從顯示的應用程式類型清單中選取 **Web Application (Web 應用程式)**，然後選取 **Create (建立)** 按鈕。

 Visual Studio 會在建立應用程式時顯示 **Creating Project (建立專案)** 對話方塊。當 Visual Studio 完成產生應用程式時會顯示一個面板，其中含有您的應用程式名稱。

## 建立 Elastic Beanstalk 環境並部署您的應用程式
<a name="dotnet-toolkit-linux-core-tutorial-create-env-and-deploy"></a>

本節說明如何為應用程式建立 Elastic Beanstalk 環境，並將應用程式部署到該環境。

**建立新環境並部署您的應用程式**

1.  在 Visual Studio 中選取 **View (檢視)**，然後選取 **Solution Explorer (方案總管)**。

1. 在 **Solution Explorer** 中，開啟應用程式的內容 (按一下滑鼠右鍵) 選單，然後選取 **Publish to AWS Elastic Beanstalk(發佈至 AWS Elastic Beanstalk)**。

1. 在 **Publish to AWS Elastic Beanstalk(發佈至 AWS Elastic Beanstalk)** 精靈中，輸入您的帳戶資訊。

   1. 對於**Account profile to use (要使用的帳戶設定檔)**，請選取您的**預設**帳戶，或選擇 **Add another account (新增其他帳戶)** 圖示以輸入新的帳戶資訊。

   1. 在 **Region (區域)** 部分，選取您欲部署應用程式的區域。如需可用 AWS 區域的資訊，請參閱《[AWS Elastic Beanstalk 》中的端點和配額](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html)*AWS 一般參考*。如果 Elastic Beanstalk 不支援您選擇的區域，即無法選擇部署至 Elastic Beanstalk 的選項。

   1. 選取 **Create a new application environment (建立新的應用程式環境)**，然後選擇 **Next (下一步)**。

1. 在 **Application Environment (應用程式環境)** 對話方塊中，輸入新應用程式環境的詳細資料。

1. 在下一個**AWS**選項對話方塊中，設定已部署應用程式的 Amazon EC2 選項和其他 AWS 相關選項。

   1. 對於**容器類型**，選取**執行 .NET Core 的 64bit Amazon Linux 2 v*<n.n.n>*。**
**注意**  
我們建議您選取 Linux 的目前平台版本。此版本包含了我們最新的 Amazon Machine Image (AMI) 中包含的最新安全性和錯誤修正。

   1. 對於**執行個體類型**，請選擇 **t2.micro**。(選擇微型執行個體類型可將執行個體相關的成本降至最低。)

   1. 在 **Key pair (金鑰對**) 的部分，選取 **Create new key pair (建立新的金鑰對)**。輸入新金鑰對的名稱，然後選擇 **OK (確定)**。(在此範例中，我們使用 **myuseastkeypair**。) 金鑰對可啟用您 Amazon EC2 執行個體的遠端桌面存取。如需 Amazon EC2 金鑰對的詳細資訊，請參閱《*Amazon Elastic Compute Cloud 使用者指南*》中的[使用憑證](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-credentials.html)。

   1. 針對簡單、低流量的應用程式，請選取 **Single instance environment (單一執行個體環境)**。如需詳細資訊，請參閱[環境類型](using-features-managing-env-types.md)。

   1. 選取**下一步**。

    如需此範例中未使用之 AWS 選項的詳細資訊，請考慮下列頁面：
   + 如需**使用自訂 AMI**，請參閱[在 Elastic Beanstalk 環境中使用自訂 Amazon Machine Image (AMI)](using-features.customenv.md)。
   + 如果未選取 **Single instance environment (單一執行處理環境)**，則需要選擇 **Load balance type (負載平衡類型)**。如需詳細資訊，請參閱[您的 Elastic Beanstalk 環境的負載平衡器](using-features.managing.elb.md)。
   + 如果您未選擇**使用非預設 VPC**，Elastic Beanstalk 會使用預設的 [Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/) (Amazon Virtual Private Cloud) 組態。如需詳細資訊，請參閱 [搭配 Amazon VPC 使用 Elastic Beanstalk](vpc.md)。
   + 選擇 **Enable Rolling Deployments (啟用輪流部署)** 選項會將部署分為多個批次，以避免部署期間可能的停機時間。如需詳細資訊，請參閱[將應用程式部署至 Elastic Beanstalk 環境](using-features.deploy-existing-version.md)。
   + 選擇 **Relational Database Access (關聯式資料庫存取)** 選項可讓您將 Elastic Beanstalk 環境透過「Amazon RDS 資料庫安全群組」**連線到先前建立的 Amazon RDS 資料庫。如需詳細資訊，請參閱《*Amazon RDS 使用者指南*》中的[使用安全群組控制存取](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.RDSSecurityGroups.html)。

1. 在**許可**對話方塊中選取**下一步**。

1. 在**應用程式選項**對話方塊中選取**下一步**。

1. 檢閱您的部署選項。確認設定正確之後，請選取 **Deploy (部署)**。

您的 ASP.NET Core Web 應用程式匯出為 Web 部署檔案。此檔案會上傳至 Amazon S3，且會向 Elastic Beanstalk 註冊為新的應用程式版本。Elastic Beanstalk 部署功能會監控您的環境，直到其具備新部署的程式碼且可供使用。在 Env:<environment name> 標籤中會顯示環境的**狀態**。狀態更新為 **Environment is healthy (環境的運作狀態正常)** 的狀態後，請選取 URL 位址以啟動 Web 應用程式。

## 終止環境
<a name="dotnet-toolkit-linux-core-tutorial-terminate-env"></a>

 若要避免未使用的 AWS 資源產生費用，您可以使用 AWS Toolkit for Visual Studio 來終止執行環境。

**注意**  
您稍後可隨時運用相同版本啟動新的環境。

**終止環境**

1. 展開 Elastic Beanstalk 節點和應用程式節點。在 **AWS Explorer** 中，開啟應用程式環境的內容 (按一下滑鼠右鍵) 選單，然後選取 **Terminate Environment (終止環境)**。

1. 提示出現時，按一下 **Yes (是)** 以確認您希望終止該環境。Elastic Beanstalk 需要幾分鐘的時間來終止環境中執行 AWS 的資源。

在 Env:<environment name> 標籤的中您環境的**狀態**會變更為 **Terminating (終止中)** 最後會變成 **Terminated (已終止)**。

**注意**  
 當您終止環境後，與該終止環境相關聯的 CNAME 可供任何人使用。