Deploy e Criação de Aplicação .Net Core no Microsoft Azure

Microsoft Azure é um serviço, em nuvem, muito utilizado por empresas e pelos próprios desenvolvedores e saber como realizar o deploy de alguma aplicação ou configurar um banco de dados na plataforma é fundamental para a evolução de um projeto. Neste contexto, tem-se como objetivo mostrar como criar serviços de banco de dados e de hospedagem de aplicações na nuvem e de como configurar e publicar, através do Visual Studio Code, os mesmos.

Criação do grupo de recursos

Primeiramente, deve-se acessar o portal da Microsoft Azure, logo em seguida será apresentado uma tela contendo o seguinte menu:

Necessita-se criar um novo grupo de recursos, para isso clica-se na opção Resource groups, será exibido a seguinte tela:

Seleciona-se a opção Add para ser adicionado um grupo. Será apresentado a seguinte tela solicitando algumas informações, tais como o nome do grupo, a assinatura que o usuário possui e a localização a qual ficará o grupo:

Após preencher as informações, clica-se em Create para finalizar. Com isso, será retornado para a tela inicial do grupo de recurso, a qual já irá mostrar o grupo que acabou de ser criado.

Criação de plano de serviços

Seleciona-se o grupo que foi criado. E, agora, necessita-se adicionar as aplicações. Na tela exibida, clica-se em Add na tela exibida:

Será exibido uma tela a qual apresenta-se vários tipos de serviços oferecidos pela Azure. Primeiro, necessita-se criar um plano para poder utilizar demais serviços. Para isso, pesquisa-se sobre App Service Plan na barra de pesquisa e seleciona-se o mesmo, como é esboçado na imagem:

Após selecionar o serviço de plano, clica-se em Create para poder dar início a criação do mesmo. Irá ser solicitado algumas informações, tais como:

  • Nome do plano
  • Assinatura do usuário logado no Azure
  • Grupo de recurso, o qual marca-se a opção Utilizar um Existente (Use Existing), e seleciona-se a opção do grupo de recursos já criado (modelo-azure)
  • Sistema operacional (Linux ou Windows) no caso, a primeiro instante, seleciona-se o Windows
  • Localização (o preço pode variar dependendo da localização), onde seleciona-se, a primeiro instante, Sul do Brasil (Brazil South)
  • Camada de precificação, no caso terá que analisar qual irá atender ao cenário de cada um (seleciona-se, a primeiro momento, o tipo S1 do plano de Produção)

Após preencher todas as informações, clica-se em Create para realizar o deploy e finalizar. Ao acessar o grupo de recursos, novamente, nota-se que o plano criado já se encontra exibido lá:

Criação de serviço de aplicativos web

Nesta mesma tela, clica-se, novamente, em Add para adicionar os serviço que serão utilizados. Pesquisa-se por App Service, seleciona-se no item Web App e clica-se no botão Create para ser criado um novo serviço:

Após isso, será pedido algumas informações para criar o serviço de Web App, são eles:

  • Nome do aplicativo
  • Assinatura do usuário logado no Azure
  • Grupo de recursos (utiliza-se o que foi criado)
  • Sistema Operacional (seleciona-se, inicialmente, o Windows)
  • O plano (seleciona-se o que foi criado)
  • Se irá utilizar ou não o Application Insights (serviço de gerenciamento de desempenho de aplicativo, inicialmente não será utilizado)

Sendo preenchida todas as informações, clica-se no botão Create para iniciar o deploy do serviço e finalizar a criação do mesmo. Retornando na tela do grupo de recursos criado, nota-se a presença do serviço de aplicativo web.

Criação de serviço de banco de dados MySql

Novamente, seleciona-se a opção Add para ser adicionado um novo serviço ao nosso grupo de recursos. Pesquisa-se sobre Azure Database for MySQL, seleciona-se o item contendo o mesmo nome e clica-se no botão Create para iniciar o processo de criação do mesmo.

Será exigido algumas informações como:

  • Nome do servidor (não poderá conter caracteres especiais e nem letras maiúsculas)
  • Assinatura do usuário logado no Azure
  • Grupo de recurso (utiliza-se o que foi criado)
  • Tipo de banco (Blank ou Backup), caso possua algum backup no Azure e gostaria de restaurá-lo, seleciona-se a opção Backup, caso contrário, cria-se um servidor vazio, selecionando a opção Blank.
  • Login administrador do servidor
  • Senha do servidor (não poderá conter palavras sendo parte do login)
  • Localização, no caso seleciona-se Sul do Brasil (Brazil South)
  • Versão do banco de dados, seleciona-se a última versão presente (5.7)
  • Camada de preço (deve-se analisar qual será a melhor dentro do cenário financeiro e da aplicação), para esboço seleciona-se o plano Básico (Basic)

Após preencher as informações, clica-se em Create onde será realizado o deploy e finalização da criação do serviço. Voltando para a página do grupo de recurso criado, vê-se o serviço de banco de dados presente e já criado.

Analisando configurações do banco de dados

Ainda na tela do grupo de recursos, clica-se no item referente ao banco de dados (modelodb), será apresentado a seguinte tela:

Nesta tela, vá-se no menu e seleciona a opção Properties (Propriedades), nesta seção será apresentado as propriedades do servidor do banco de dados e é onde encontra-se as informações para conexão do mesmo.

As informações que serão utilizadas para conectar no banco de dado será:

  • Server: modelodb.mysql.database.azure.com
  • Login: modelo@modelodb
  • Password: azure@123
  • Port: por padrão é 3306

Com essas informações já consegue-se conectar no servidor. Contudo, para conexão externa do Azure (MySql Workbench ou aplicação local na máquina, por exemplo), tem-se que habilitar. E para isso, vá-se no menu novamente e seleciona-se a opção Connection Security (Conexão Segura), onde esboça-se a seguinte tela:

Clica-se no botão Add client IP (Adicionar IP do cliente) e Save para salvar, onde será adicionado o IP referente a máquina que está operando, com isso será habilitado conexões externas para o IP inserido.

Para certificar de que está tudo funcionando, tenta-se acessar o servidor externamente via MySql Workbench, como conferido:

Por fim, a string de conexão para aplicações .net será:

Server=modelodb.mysql.database.azure.com;Port=3306;Database=[NOME_BANCO_DADOS];Uid=modelo@modelodb;Pwd=azure@123;SslMode=Preferred;

Configuração do plugin da Azure no VS Code

Finalizando, necessita-se realizar o deploy da aplicação .Net Core através do Visual Studio Code. Para tal feito, necessita-se baixar e instalar um plugin no VS Code para gestão de aplicações do Azure. Acessa-se o seguinte site:

Clica-se em Install (Instalar). Será solicitado a instalação para o VS Code, basta concordar e, após finalizar, reiniciar o mesmo (caso esteja aberto).

Após conclusão da instalação do plugin, no menu lateral do VS Code aparecerá um ícone referente ao Azure:

Preparação do projeto para Deploy

A partir do VS Code, seleciona-se alguma pasta referente a algum projeto em .Net Core. Abra o terminal dentro do mesmo e digita-se os seguintes comandos:

  • dotnet clean (para limpar a saída do projeto)
  • dotnet build -c Release (compilar o projeto e suas dependências em release)
  • dotnet publish -c Release (empacota o aplicativo e suas dependências em uma pasta para implantação em um sistema de hospedagem, no caso será criado no caminho “\bin\Release\netcoreapp2.1\publish”)

Acessando conta da Azure

Acessa-se o plugin da Azure no menu lateral esquerdo. Será apresentado a seguinte tela, clica-se em Sign in Azure para realizar o acesso.

Após iniciar o processo de login, será exibido a seguinte notificação, a qual informa para abrir o navegador na URL informada e informar o seguinte código no site que for abrir. Para poupar trabalho, clica-se em Copy & Open, o qual já fará quase todo esse processo.

No site, informe o código, conforme orientado:

Após informar o código, clica-se em Continue (Continuar).

Logo após será solicitado informar uma conta já logada ou logar em alguma conta. Escolha-se a conta referente a conta utilizada no Azure.

Com isso, já estará logado no Azure pelo VS Code, como pode-se observar, já será exibido as assinaturas presentes na conta:

Deploy da aplicação

No menu lateral do VS Code, clica-se no ícone da Azure, será apresentado uma tela contendo todas as assinaturas encontradas em cache da máquina. Nesta tela, clica-se no ícone de deploy (circulado de vermelho na imagem):

Será solicitado a informação da pasta contendo os arquivos de publicação da aplicação. Seleciona-se a opção Browse para poder selecionar a pasta referente.

No caso, deverá ser selecionado o caminho de onde foi realizada a publicação da aplicação (\bin\Release\netcoreapp2.1\publish). Feito isso, deverá informar qual assinatura estará relacionado o deploy que será feito.

E, por fim, deverá ser informado qual serviço de aplicação será a hospedagem. Deve-se escolher o serviço criado anteriormente.

Será apresentado a seguinte mensagem. Basta clicar em Deploy.

Feito este processo, o deploy será iniciado. Ao finalizar será apresentado a URL o qual foi publicado a aplicação.

Ao acessar a seguinte URL, nota-se a aplicação em pleno funcionamento.

Conclusão

Nota-se que com alguns passos consegue-se realizar o deploy de uma aplicação em .Net Core direto do VS Code. Após realizar todos os procedimentos, não será necessário fazê-los mais, com exceção da publicação (dotnet publish -c Release) e o deploy (botão/ícone de deploy na tela inicial do plugin Azure) da aplicação. Além disso, foi mostrado como criar diferentes serviços no Azure como o Banco de Dados e Aplicativos Web.

Bachelor in Computer Science, MBA in Software Architecture and .NET Developer.

Bachelor in Computer Science, MBA in Software Architecture and .NET Developer.