參加你附近的 ,瞭解 VS Code 中的 AI 輔助開發。

將容器化應用部署到 Azure

在本指南中,您將學習如何

  • 為您的應用程式建立一個容器映像。
  • 將映像推送到容器登錄檔。
  • 將映像部署到 Azure 應用服務或 Azure 容器應用。

先決條件

建立應用程式映像

如果您已有映像,請跳過此步驟,繼續執行將映像推送到容器登錄檔步驟。

  1. 在 VS Code 中開啟應用程式資料夾。

  2. 開啟命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)),並使用 Container Images: Build Image... 命令來生成映像。

    Build container image

    您可以在“生成映像”命令的輸出中找到映像名稱,也可以在容器資源管理器的“映像”窗格中找到該名稱。

    Build image output

將映像推送到容器登錄檔

在將映像部署到應用服務或容器應用之前,必須將該映像上傳到容器登錄檔。該映像可以上傳到 Azure 容器登錄檔 (ACR)Docker Hub

  1. 開啟容器資源管理器,選擇 Registries 組下的 Connect Registry... 圖示,然後按照提示操作。選擇提供商(Azure 或 Docker Hub)並提供憑據以連線到登錄檔。

    Connect to Registry

  2. 現在,該登錄檔將在 Registries 下可見。

    Registries

  3. (可選)為映像新增標記。為了將映像上傳到登錄檔,需要用登錄檔名稱標記該映像,以便 docker push 命令將其上傳到正確的登錄檔。

    • 要在 Azure ACR 中建立登錄檔,請開啟容器資源管理器的 Registries 部分,如果尚未登入,請登入 Azure,然後右鍵單擊要使用的訂閱,並選擇 Create Registry

    • 上一節中生成的映像將出現在容器資源管理器的“Images”部分下。右鍵單擊並選擇 Tag...

      Tag image

    • 指定新名稱 <your registry or username>/<image name>:<tag> 並完成標記操作。例如,對於名為 WebApp6 的 ACR,新映像名稱為“webapp6.azurecr.io/webapp6:latest”,對於 Docker Hub,則為“myusername/webapp6:latest”。

  4. 該映像將顯示在容器資源管理器中,位於映像標記指向的登錄檔下。選擇此映像並選擇 Push。如果映像尚未標記,系統將提示您選擇要推送到的登錄檔,並根據您的選擇為映像新增標記。

    Push image

  5. 推送命令完成後,重新整理映像推送到的登錄檔節點,上傳的映像將會顯示出來。

    Refresh registry

將映像部署到 Azure

在上一節中,映像被推送到了遠端容器登錄檔。現在將此映像部署到 Azure 應用服務或 Azure 容器應用。

  1. 在容器資源管理器中,導航到 Registries 下的您的映像,右鍵單擊標記,然後選擇 Deploy Image To Azure App Service...Deploy Image to Azure Container Apps...

    Deploy to Azure App Service

  2. 出現提示時,為應用服務或容器應用提供相應的值。

    • 新的 Web 應用名稱:該名稱在整個 Azure 中必須是唯一的。
    • 資源組:選擇一個現有的資源組或建立一個新的資源組。
    • 應用服務計劃:選擇一個現有的應用服務計劃或建立一個新的。 (應用服務計劃定義了託管網站的物理資源;本教程您可以使用基本或免費計劃層級)。
  3. 部署完成後,Visual Studio Code 會顯示一個包含網站 URL 的通知。

    Deployment complete notification

  4. 您還可以在 Visual Studio Code 的輸出面板中的“Container Tools”部分檢視結果。

    Deployment complete output

  5. 要瀏覽已部署的網站,您可以使用 Ctrl+單擊 在輸出面板中開啟 URL。您可能需要稍等片刻,等待應用在 Azure 上線。新的應用服務或容器應用也會出現在 Visual Studio Code 的 Azure 檢視中,您可以在其中右鍵單擊網站並選擇 Browse Website

    Web Application

後續步驟

繼續閱讀以瞭解更多資訊

  • Azure 擴充套件 - VS Code Marketplace 包含數百個用於 Azure 和雲的擴充套件。
  • 部署到 Azure - 逐步瞭解如何將您的應用程式部署到 Azure。
  • 使用 MongoDB - 在 VS Code 中建立、管理和查詢 MongoDB 資料庫。