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

Alex Alves
9 min readJun 16, 2018

--

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:

Menu — Portal Azure

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

Resource groups

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:

Criação de um grupo de recursos

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.

Grupos de Recurso

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:

Tela referente ao grupo de recurso selecionado

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:

Pesquisar serviço para adicionar plano

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)
Selecionando um tipo de camada de precificação
Criação de plano

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á:

Plano já criado e exibido no grupo de recursos

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:

Selecionando o serviço de Web App

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)
Informações para criar serviço de Web App

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.

Serviço de aplicativos web já criado

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.

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

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)
Camada de preço para o banco de dados
Informações para criar serviço de banco de dados

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.

Serviço de banco de dados 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:

Tela inicial do serviço de banco de dados

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.

Informações do servidor de banco de dados

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:

Inclusão de conexão segura

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:

Conexão no servidor via MySql Workbench

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:

Plugin para VS Code

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).

Mensagem para concordar em abrir link pelo VS Code

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

Ícone contendo as funcionalidades de aplicações da 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.

Tela inicial do plugin Azure

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.

Informações para login

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

Local para informar código para logar no VS Code

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

Informação do código

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.

Escolha de alguma conta

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

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):

Tela referente a gerenciamento da Azure

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.

Seleção da pasta contendo arquivos de publicação

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.

Seleção de alguma assinatura

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

Seleção de um aplicativo web

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

Mensagem de alerta antes do deploy

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

Log de status do deploy

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

Aplicação publicada e executando

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.

--

--

Alex Alves

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