将容器化应用部署到 Azure
在本指南中,您将学习如何
- 为你的应用程序创建一个容器映像。
- 将映像推送到容器注册表。
- 将映像部署到 Azure App Service 或 Azure 容器应用。
先决条件
- 一个 Azure 订阅。
- 必须安装 容器工具 和 Azure App Service 扩展。
- 一个生成容器映像的 Web 应用程序。你也可以按照 创建示例 ASP .NET Core 应用程序 来创建此类应用程序。
- 你需要一个 Docker Hub 帐户或一个 Azure 容器注册表 (ACR) 实例。
创建应用映像
如果你已经有一个映像,请跳过此步骤,继续执行 将映像推送到容器注册表 步骤。
-
在 VS Code 中打开应用程序文件夹。
-
打开命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P)),然后使用 Container Images: Build Image... 命令来构建映像。

你可以在“构建映像”命令的输出中找到映像名称,也可以在容器资源管理器的“映像”窗格中找到它。

将映像推送到容器注册表
在将映像部署到 App Service 或容器应用之前,必须将映像上传到容器注册表。可以将映像上传到 Azure 容器注册表 (ACR) 或 Docker Hub。
-
打开容器资源管理器,在“注册表”组下选择 Connect Registry... 图标,然后按照提示操作。选择提供商(Azure 或 Docker Hub)并提供凭据以连接到注册表。

-
现在,注册表将显示在“注册表”下。

-
可选地,标记映像。为了将映像上传到注册表,需要使用注册表名称标记该映像,以便
docker push命令将其上传到正确的注册表。-
要在 Azure ACR 中创建注册表,请打开容器资源管理器的“注册表”部分,如果尚未登录,请登录 Azure,然后右键单击要使用的订阅,并选择 Create Registry。
-
上一步中构建的映像将显示在容器资源管理器的“映像”部分下。右键单击并选择 Tag...。

-
指定新名称
<your registry or username>/<image name>:<tag>并完成标记操作。例如,对于名为 WebApp6 的 ACR,新映像名称将是 'webapp6.azurecr.io/webapp6:latest',对于 Docker Hub,它将是 'myusername/webapp6:latest'。
-
-
映像将显示在容器资源管理器中,位于映像标记指向的注册表下。选择此映像并选择 Push。如果映像尚未标记,系统将提示你选择要推送到的注册表,并且映像将根据选择进行标记。

-
推送命令完成后。刷新映像被推送到的注册表节点,上传的映像就会显示出来。

将映像部署到 Azure
在前面的部分中,映像已推送到远程容器注册表。现在将此映像部署到 Azure App Service 或 Azure 容器应用。
-
在容器资源管理器中,导航到“注册表”下的映像,右键单击标签,然后选择 Deploy Image To Azure App Service... 或 Deploy Image to Azure Container Apps...。

-
出现提示时,提供 App Service 或容器应用的值。
- 新的 Web 应用名称:名称在 Azure 中必须是唯一的。
- 资源组:选择一个现有的资源组或创建一个新的资源组。
- App Service 计划:选择一个现有的 App Service 计划或创建一个新的计划。(App Service 计划定义托管网站的物理资源;你可以为此教程使用基本或免费计划层级)。
-
部署完成后,Visual Studio Code 会显示一个带有网站 URL 的通知。

-
你也可以在 Visual Studio Code 的“输出”面板中“容器工具”部分查看结果。

-
要浏览已部署的网站,你可以使用 Ctrl+click 在“输出”面板中打开 URL。你可能需要等待一段时间才能让应用在 Azure 中启动。新的 App Service 或容器应用也会出现在 Visual Studio Code 的 Azure 视图中,你可以在其中右键单击网站并选择 Browse Website。

后续步骤
继续阅读以了解更多信息
- Azure 扩展 - VS Code Marketplace 包含数百个用于 Azure 和云的扩展。
- 部署到 Azure - 逐步了解如何将您的应用程序部署到 Azure。
- 使用 MongoDB - 在 VS Code 内部创建、管理和查询 MongoDB 数据库。