你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

什么是适用于 Azure SQL 数据库的开发容器模板?

适用于:Azure SQL 数据库

开发容器提供了一个全面的解决方案,用于增强 Azure SQL 数据库的本地开发。 开发容器模板为开发人员提供了无缝高效的开发环境,使他们能够轻松、自信地构建 Azure SQL 数据库的应用程序。

开发容器可以在任何开发环境中使用,无论是在本地还是云中,都可以促进团队和工作流之间的一致性。

此图显示了 Azure SQL 数据库与开发容器本地开发体验。

用于 Azure SQL 数据库的开发容器模板通过提供预配置的环境来简化开发过程,无需进行手动设置。 开发人员可以使用常用的编程语言,通过实施所有必要的工具和依赖项立即开始编码。 这些模板与 Visual Studio CodeGitHub Codespaces 兼容,可实现从本地开发到云环境的无缝转换。

本地开发环境模拟 Azure SQL 数据库,使你能够高效地管理数据和测试应用程序。 准备就绪后,GitHub Actions 会自动执行部署过程,将应用程序无缝转换为 Azure Static Web AppsAzure Web 应用程序服务Azure SQL 数据库。 这种简化的工作流可提高工作效率,缩短设置时间,并确保本地环境和生产环境之间的一致性,从而帮助你更快地交付高质量的应用程序。

提示

devcontainers/ci 中提供了 GitHub Action 和 Azure DevOps 任务,用于在持续集成 (CI) 版本中运行存储库的开发容器。 这样,你就可以重复使用用于本地开发的相同设置,以便在 CI 中生成和测试代码。

以下视频提供适用于Azure SQL 数据库的最新开发容器模板的独家概述,展示了增强本地开发体验的优势和功能:


开发容器工作原理

无论在哪种情况下使用,开发容器都是预配置的容器化环境,旨在提供一致的开发体验。 它们利用开发容器规范 (devcontainer.json) 为开发环境定义必要的工具、设置和配置。

关键组件

  • Docker:提供基础容器技术来创建隔离环境。
  • VS Code:充当与开发容器交互的集成开发环境 (IDE)。
  • GitHub Codespaces:将开发容器扩展到云,通过浏览器从任何设备中启用开发。

入门步骤

  • 初始化:开发人员从包含所有必要配置的开发容器模板开始。
  • 环境设置:通过使用 Docker,基于 devcontainer.json 规范设置环境来生成容器。
  • 编码和测试:开发人员在此一致的环境中编写和测试代码,确保与最终生产设置兼容。
  • 部署:完成开发和测试后,可以使用 CI/CD 管道(如 GitHub Actions)无缝部署应用程序。

Azure SQL 数据库和开发容器

开发容器通过解决常见挑战和增强整体工作流,对 Azure SQL 数据库开发起到帮助作用。 由于开发人员在为 Azure SQL 数据库设置高效的本地开发环境时面临重大挑战:

  • 缺乏兼容性:本地开发和生产环境之间的差异。
  • 设置复杂性:耗时的手动安装和配置。
  • 依赖于云资源:增加云成本和对互联网连接的依赖。
  • 有限集成:缺少与现有 Azure 开发工具的集成。

用于 Azure SQL 数据库的专用开发容器模板可帮助你弥合这一差距,增强开发体验并简化 Azure 生态系统中的工作流。

用于 Azure SQL 数据库的开发容器的优点

开发容器简化了开发生命周期,使开发人员能够专注于编码和测试,而无需进行环境设置。 这种效率可提高迭代速度、构建高质量应用程序,并缩短基于 Azure SQL 数据库构建的应用程序的上市时间,使企业具有竞争优势。

使用开发容器进行本地开发可降低在 Azure 环境中进行开发和测试所产生的云成本。 这种资源的优化可提高成本效益和可伸缩性。 开发人员可以使用 Azure SQL 数据库的可伸缩性和可靠性进行生成部署,以无缝地从本地开发转换到 Azure 环境,而无需产生不必要的成本。

开发容器支持云原生开发应用场景,与现代应用程序体系结构和框架保持一致。 这可确保与 Azure SQL 数据库兼容,并有助于无缝部署到 Azure 环境。 通过接纳云原生趋势,我们将 Azure SQL 数据库定位为现代云原生应用程序选择的平台,从而推动长期采用和收入增长。

要充分了解开发容器对 Azure SQL 数据库项目的影响,请考虑以下增强和简化开发过程的主要功能:

Visual Studio Code 扩展

  • ms-mssql.mssql:用于连接和查询 SQL 数据库的 SQL Server 扩展。
  • ms-mssql.sql-database-projects:用于管理 SQL 数据库项目的扩展,允许简化的架构更改和部署。
  • github.copilot:AI 提供支持的代码完成,以提高工作效率。
  • ms-azuretools.vscode-docker:用于直接从 Visual Studio Code 管理容器的 Docker 扩展。
  • github.codespaces:用于处理 GitHub Codespaces 的扩展。
  • ms-azuretools.vscode-docker:用于管理容器的 Docker 扩展。

提示

根据你选择的模板,有更多扩展可用。

预配置环境

以下所有工具和实用工具都会预加载到开发容器中。 你无需下载或安装任何工具。

  • .NET / .NET Aspire / Node / Python:环境包括预安装并配置的首选编程语言/框架,可供开发。
  • Azure CLI:用于管理 Azure 资源和部署的工具。
  • Azure Developer CLI:一种命令行接口,提供用于管理和开发 Azure 资源的统一脚本体验。
  • Docker CLI:允许从另一个容器内部构建和管理 Docker 容器。
  • Azure SQL 数据库library 数据库已创建并验证且可供使用。 此数据库提供与 Azure SQL 数据库的完全兼容性。
  • SQLCMD:一种命令行实用工具,可用于与数据库交互、运行查询等。
  • SqlPackage:用于部署数据库更改的命令行实用工具,包括架构更新和数据迁移。

重要

虽然容器现在使用 mcr.microsoft.com/azure-sql-edge 映像,专为边缘计算应用场景设计,并提供 SQL Server 功能的子集以及内置 AI,但此开发容器中的所有数据库开发仍可使用 SQL 数据库项目验证 Azure SQL 数据库。 SQL 数据库项目预配置了目标平台集作为 Azure SQL 数据库。

Visual Studio Code 任务

Visual Studio Code 中的一组预定义任务,用于简化常见操作:

  • 1. 验证数据库架构和数据:打开并执行 SQL 文件以验证数据库架构。
  • 2. 生成 SQL 数据库项目:使用 dotnet build 生成 SQL 数据库项目。
  • 3.发布 SQL 数据库项目:将 SQL 数据库项目发布到数据库容器。

提示

有可用的特定任务,具体取决于你选择的模板。

可用模板

适用于 Azure SQL 数据库的开发容器模板适用于以下编程语言/框架:

编程语言/框架 说明
.NET 适用于 .NET 和 Azure SQL 的开发环境,可实现简化的本地开发和测试。
.NET Aspire .NET Aspire 和 Azure SQL 的开发环境,可实现简化的本地开发和测试。
Node.js Node.js (JavaScript) 和 Azure SQL 的开发环境,可实现简化的本地开发和测试。
Python Python 和 Azure SQL 的开发环境,可实现简化的本地开发和测试。

提示

每个模板都附带了预配置的 Azure SQL 数据库,便于立即开始开发!