將容器化應用部署到 Azure
在本指南中,您將學習如何
- 為您的應用程式建立一個容器映像。
- 將映像推送到容器登錄檔。
- 將映像部署到 Azure 應用服務或 Azure 容器應用。
先決條件
- 一個 Azure 訂閱。
- 必須安裝 容器工具和 Azure 應用服務擴充套件。
- 一個可生成容器映像的 Web 應用程式。您也可以按照建立示例 ASP.NET Core 應用程式來建立此類應用程式。
- 您需要一個 Docker Hub 帳戶或一個 Azure 容器登錄檔 (ACR) 例項。
建立應用程式映像
如果您已有映像,請跳過此步驟,繼續執行將映像推送到容器登錄檔步驟。
-
在 VS Code 中開啟應用程式資料夾。
-
開啟命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)),並使用 Container Images: Build Image... 命令來生成映像。
您可以在“生成映像”命令的輸出中找到映像名稱,也可以在容器資源管理器的“映像”窗格中找到該名稱。
將映像推送到容器登錄檔
在將映像部署到應用服務或容器應用之前,必須將該映像上傳到容器登錄檔。該映像可以上傳到 Azure 容器登錄檔 (ACR) 或 Docker Hub。
-
開啟容器資源管理器,選擇 Registries 組下的 Connect Registry... 圖示,然後按照提示操作。選擇提供商(Azure 或 Docker Hub)並提供憑據以連線到登錄檔。
-
現在,該登錄檔將在 Registries 下可見。
-
(可選)為映像新增標記。為了將映像上傳到登錄檔,需要用登錄檔名稱標記該映像,以便
docker push
命令將其上傳到正確的登錄檔。-
要在 Azure ACR 中建立登錄檔,請開啟容器資源管理器的 Registries 部分,如果尚未登入,請登入 Azure,然後右鍵單擊要使用的訂閱,並選擇 Create Registry。
-
上一節中生成的映像將出現在容器資源管理器的“Images”部分下。右鍵單擊並選擇 Tag...。
-
指定新名稱
<your registry or username>/<image name>:<tag>
並完成標記操作。例如,對於名為 WebApp6 的 ACR,新映像名稱為“webapp6.azurecr.io/webapp6:latest”,對於 Docker Hub,則為“myusername/webapp6:latest”。
-
-
該映像將顯示在容器資源管理器中,位於映像標記指向的登錄檔下。選擇此映像並選擇 Push。如果映像尚未標記,系統將提示您選擇要推送到的登錄檔,並根據您的選擇為映像新增標記。
-
推送命令完成後,重新整理映像推送到的登錄檔節點,上傳的映像將會顯示出來。
將映像部署到 Azure
在上一節中,映像被推送到了遠端容器登錄檔。現在將此映像部署到 Azure 應用服務或 Azure 容器應用。
-
在容器資源管理器中,導航到 Registries 下的您的映像,右鍵單擊標記,然後選擇 Deploy Image To Azure App Service... 或 Deploy Image to Azure Container Apps...。
-
出現提示時,為應用服務或容器應用提供相應的值。
- 新的 Web 應用名稱:該名稱在整個 Azure 中必須是唯一的。
- 資源組:選擇一個現有的資源組或建立一個新的資源組。
- 應用服務計劃:選擇一個現有的應用服務計劃或建立一個新的。 (應用服務計劃定義了託管網站的物理資源;本教程您可以使用基本或免費計劃層級)。
-
部署完成後,Visual Studio Code 會顯示一個包含網站 URL 的通知。
-
您還可以在 Visual Studio Code 的輸出面板中的“Container Tools”部分檢視結果。
-
要瀏覽已部署的網站,您可以使用 Ctrl+單擊 在輸出面板中開啟 URL。您可能需要稍等片刻,等待應用在 Azure 上線。新的應用服務或容器應用也會出現在 Visual Studio Code 的 Azure 檢視中,您可以在其中右鍵單擊網站並選擇 Browse Website。
後續步驟
繼續閱讀以瞭解更多資訊
- Azure 擴充套件 - VS Code Marketplace 包含數百個用於 Azure 和雲的擴充套件。
- 部署到 Azure - 逐步瞭解如何將您的應用程式部署到 Azure。
- 使用 MongoDB - 在 VS Code 中建立、管理和查詢 MongoDB 資料庫。