O que são os Modelos de Contêiner de Desenvolvimento para o Banco de Dados SQL do Azure?

Aplica-se a: Banco de Dados SQL do Azure

Os contêineres de desenvolvimento oferecem uma solução abrangente para aprimorar o desenvolvimento local do Banco de Dados SQL do Azure. Os Modelos de Contêiner de Desenvolvimento oferecem aos desenvolvedores um ambiente de desenvolvimento eficiente e sem interrupções, permitindo que eles criem aplicativos para o Banco de Dados SQL do Azure com facilidade e confiança.

Os contêineres de desenvolvimento podem ser utilizados em qualquer ambiente de desenvolvimento, seja local ou na nuvem para promover a consistência entre equipes e fluxos de trabalho.

Diagrama que mostra o Banco de Dados SQL do Azure com a experiência de desenvolvimento local de contêineres de desenvolvimento.

Os Modelos de Contêiner de Desenvolvimento para Banco de Dados SQL do Azure simplificam o processo de desenvolvimento e oferecem ambientes pré-configurados que eliminam a necessidade de configuração manual. Os desenvolvedores começam a codificar imediatamente com todas as ferramentas e dependências necessárias, usando linguagens de programação populares. Esses modelos são compatíveis com o Visual Studio Code e o GitHub Codespaces, garantindo uma transição perfeita do desenvolvimento local para ambientes de nuvem.

O ambiente de desenvolvimento local imita o Banco de Dados SQL do Azure, o que permite gerenciar dados e teste aplicativos com eficiência. Depois de pronto, o GitHub Actions automatiza o processo de implantação, proporcionando transição perfeita de seu aplicativo aos Aplicativos Web Estáticos do Azure ou ao Serviço de Aplicativo Web do Azure e o Banco de Dados SQL do Azure. Esse fluxo de trabalho simplificado aumenta a produtividade, reduz o tempo de configuração e garante a consistência entre os ambientes locais e de produção, para que você ofereça aplicativos de alta qualidade com mais rapidez.

Dica

Uma ação do GitHub e uma tarefa do Azure DevOps estão disponíveis em devcontainers/ci para executar o contêiner de desenvolvimento de um repositório em builds de CI (integração contínua). Isso possibilita o reuso da mesma configuração usada no desenvolvimento local para criar e testar o código em CI.

O vídeo a seguir fornece uma visão geral exclusiva dos modelos de Contêiner de Desenvolvimento mais recentes para o Banco de Dados SQL do Azure, mostrando os benefícios e recursos que aprimoram a experiência de desenvolvimento local:


Como os contêineres de desenvolvimento funcionam

Os contêineres de desenvolvimento são ambientes pré-configurados e conteinerizados projetados para oferecer uma experiência de desenvolvimento consistente em qualquer local de uso. Eles utilizam a Especificação do Contêiner de Desenvolvimento (devcontainer.json) para definir as ferramentas, configurações e configurações necessárias para o ambiente de desenvolvimento.

Principais componentes

  • Docker: fornece a tecnologia de contêiner subjacente para a criação de ambientes isolados.
  • VS Code: atua como o IDE (ambiente de desenvolvimento integrado) que interage com contêineres de desenvolvimento.
  • GitHub Codespaces: estende os contêineres de desenvolvimento para a nuvem, permitindo o desenvolvimento a partir de qualquer dispositivo com um navegador.

Etapas para começar

  • Inicialização: os desenvolvedores começam com um modelo de contêiner de desenvolvimento que tem todas as configurações necessárias.
  • Configuração do ambiente: o contêiner é criado com o uso do Docker, configurando o ambiente com base nas especificações no devcontainer.json.
  • Escrita de código e teste: os desenvolvedores escrevem e testam o código nesse ambiente consistente, o que garante a compatibilidade com a configuração final de produção.
  • Implantação: após a conclusão das fases de desenvolvimento e teste, a implantação contínua do aplicativo pode ser feita usando pipelines de CI/CD, como o GitHub Actions.

Banco de Dados SQL do Azure e Contêineres de Desenvolvimento

Os Contêineres de Desenvolvimento oferecem vantagens para o desenvolvimento do Banco de Dados SQL do Azure, pois lidam com desafios comuns e aprimoram o fluxo de trabalho geral. Os desenvolvedores enfrentam desafios significativos na configuração de ambientes de desenvolvimento local eficientes para o Banco de Dados SQL do Azure:

  • Falta de compatibilidade: discrepâncias entre os ambientes de desenvolvimento e de produção locais.
  • Complexidade da configuração: as instalações e configurações manuais são demoradas.
  • Dependência de recursos de nuvem: aumento dos custos com a nuvem e dependência da conectividade com a Internet.
  • Integração limitada: falta de integração com as ferramentas de desenvolvimento existentes do Azure.

Os Modelos de Contêiner de Desenvolvimento especializados para o Banco de Dados SQL do Azure podem ajudar a preencher essas lacunas, aprimorando a experiência de desenvolvimento e simplificando os fluxos de trabalho no ecossistema do Azure.

Vantagens dos contêineres de desenvolvimento para o Banco de Dados SQL do Azure

Os contêineres de desenvolvimento simplificam o ciclo de vida do desenvolvimento, possibilitando a concentração dos desenvolvedores na escrita de código e nos testes sem o trabalho da configuração do ambiente. Essa eficiência lproduz iterações mais rápidas, aplicativos de maior qualidade e um tempo de lançamento no mercado menor para aplicativos criados no Banco de Dados SQL do Azure, proporcionando às empresas uma vantagem competitiva.

O desenvolvimento local com contêineres de desenvolvimento reduz os custos de nuvem associados ao desenvolvimento e teste em ambientes do Azure. Essa otimização de recursos melhora a eficiência de custos e a escalabilidade. Os desenvolvedores fazem a transição perfeita do desenvolvimento local para ambientes do Azure com a escalabilidade e a confiabilidade do Banco de Dados SQL do Azure para implantações de produção, sem custos desnecessários.

Os contêineres de desenvolvimento dão suporte a cenários de desenvolvimento nativos de nuvem, em conformidade com arquiteturas e estruturas de aplicativos modernas. Isso garante a compatibilidade com o Banco de Dados SQL do Azure e facilita a implantação contínua em ambientes do Azure. A adoção de tendências nativas de nuvem coloca o Banco de Dados SQL do Azure como a plataforma preferencial para aplicativos modernos e nativos de nuvem, impulsionando a adoção de longo prazo e o crescimento da receita.

Para compreender totalmente o efeito dos contêineres de desenvolvimento nos projetos do Banco de Dados SQL do Azure, considere os seguintes recursos principais que aprimoram e simplificam o processo de desenvolvimento:

Extensões de Visual Studio Code

  • ms-mssql.mssql: extensão do SQL Server para conectar e consultar bancos de dados SQL.
  • ms-mssql.sql-database-projects:extensão para gerenciar projetos do Banco de Dados SQL que permite alterações e implantações simplificadas de esquema.
  • github.copilot: preenchimento de código alimentado por IA para aumentar a produtividade.
  • ms-azuretools.vscode-docker: extensão do Docker para gerenciar contêineres diretamente do Visual Studio Code.
  • github.codespaces: extensão para trabalhar com o GitHub Codespaces.
  • ms-azuretools.vscode-docker: extensão do Docker para gerenciamento de contêineres.

Dica

Existem mais extensões disponíveis, dependendo do modelo escolhido.

Ambiente pré-configurado

As ferramentas e os utilitários abaixo são pré-carregados no contêiner de desenvolvimento. Você não precisa baixar nem instalar nada.

  • .NET/.NET Aspire/Node/Python: o ambiente inclui a linguagem de programação/estrutura de preferência pré-instalada e configurada, pronta para desenvolvimento.
  • CLI: ferramentas para o gerenciamento de recursos e implantações do Azure.
  • Azure Developer CLI: uma interface de linha de comando com experiência de script unificada para gerenciar e desenvolver recursos do Azure.
  • CLI do Docker: permite criar e gerenciar contêineres do Docker a partir de outro contêiner.
  • Banco de Dados SQL do Azure: o banco de dados de library foi criado, validado e está pronto para uso. Esse banco de dados oferece compatibilidade total com o Banco de Dados SQL do Azure.
  • SQLCMD: um utilitário de linha de comando para interagir com o banco de dados, executar consultas e muito mais.
  • SqlPackage: utilitário de linha de comando para implantar alterações de banco de dados, como atualizações de esquema e migrações de dados.

Importante

O contêiner agora usa a imagem do mcr.microsoft.com/azure-sql-edge, foi projetado para cenários de computação de borda e oferece um subconjunto de recursos do SQL Server com IA interna. No entanto, todo o desenvolvimento de banco de dados nesse contêiner de desenvolvimento ainda pode ser validado para o Banco de Dados SQL do Azure usando o Projeto de banco de dados SQL. O projeto de banco de dados SQL é pré-configurado com a plataforma de destino definida como Banco de Dados SQL do Azure.

Tarefas do Visual Studio Code

Um conjunto de tarefas predefinidas no Visual Studio Code para simplificar ações corriqueiras:

  • 1. Verificar o esquema e os dados do banco de dados: abre e executa um arquivo SQL para validar o esquema do banco de dados.
  • 2. Criar projeto de banco de dados SQL: compila o projeto de banco de dados SQL usando dotnet build.
  • 3. Publicar projeto de banco de dados SQL: publica o projeto do Banco de Dados SQL no contêiner do banco de dados.

Dica

Existem tarefas específicas disponíveis, dependendo do modelo escolhido.

Modelos disponíveis

Os Modelos de Contêiner de Desenvolvimento para o Banco de Dados SQL do Azure estão disponíveis para as seguintes linguagens de programação/estruturas:

Linguagem de programação/estrutura Descrição
.NET Um ambiente de desenvolvimento para .NET e SQL do Azure que simplifica o desenvolvimento e os testes locais.
.NET Aspire Um ambiente de desenvolvimento para .NET Aspire e SQL do Azure que simplifica o desenvolvimento e os testes locais.
Node.js Um ambiente de desenvolvimento para Node.js (JavaScript) e SQL do Azure que simplifica o desenvolvimento e os testes locais.
Python Um ambiente de desenvolvimento para Python e SQL do Azure que simplifica o desenvolvimento e os testes locais.

Dica

Cada modelo vem com um Banco de Dados SQL do Azure pré-configurado, facilitando o início do desenvolvimento imediato!