Publicar um aplicativo ASP.NET Core no Azure com o Visual Studio Code

Com este tutorial, você aprenderá a criar um aplicativo ASP.NET Core MVC e implantá-lo no Visual Studio Code. O tutorial pressupõe que você já tenha familiaridade com o VS Code. Para obter mais informações, consulte Introdução ao VS Code. Este tutorial funcionará em ambientes Windows, macOS ou Linux. Certifique-se de usar o caminho correto separando caracteres (\ vs /) para seu ambiente.

Importante

Versões prévias do ASP.NET Core com o Serviço de Aplicativo do Azure

Versões prévias do ASP.NET Core não são implantadas para o Serviço de Aplicativo do Azure por padrão. Para hospedar um aplicativo que usa uma versão prévia do ASP.NET Core, veja Implantar versão prévia do ASP.NET Core para o Serviço de Aplicativo do Azure.

Para solucionar um problema de implantação do Serviço de Aplicativo, confira Solucionar problemas do ASP.NET Core no Serviço de Aplicativo do Azure e no IIS.

Pré-requisitos

Criar um projeto ASP.NET Core MVC

  1. Abra o terminal integrado.

  2. Defina o diretório de trabalho (cd) como o diretório que conterá o projeto.

  3. Execute os comandos a seguir:

    dotnet new mvc -o MyMVCapp
    code -r MyMVCapp
    

    Para os comandos anteriores:

    • dotnet new mvc -o MyMVCapp
      • Cria um novo projeto do ASP.NET Core MVC na pasta MyMVCapp.
    • code -r MyMVCapp
      • Recarrega o arquivo de projeto MyMVCapp.csproj no Visual Studio Code.
      • O Visual Studio Code atualiza o terminal integrado para o diretório do projeto.

Observação

Se uma caixa de diálogo for exibida com Os ativos necessários para build e depuração estão ausentes de 'MyMVCapp'. Deseja adicioná-los?, selecione Sim.

Um novo projeto do ASP.NET Core MVC é criado em uma pasta MyMVCapp com uma estrutura semelhante ao seguinte:

      appsettings.Development.json
      appsettings.json
<DIR> bin
<DIR> Controllers
<DIR> Models
      MyMVCapp.csproj
<DIR> obj
      Program.cs
<DIR> Properties
<DIR> Views
<DIR> wwwroot

Uma pasta .vscode será criada com a estrutura do projeto. ASP.NET CoreEles são arquivos de utilitário para ajudá-lo a criar e depurar seu aplicativo Web .NET Core.

Testar o projeto

Antes de implantar o aplicativo no Azure, verifique se ele está sendo executado corretamente no computador local.

  1. Abra o terminal integrado (se necessário).

  2. Configure um certificado de desenvolvimento HTTPS confiável:

    • Confie no certificado de desenvolvimento HTTPS executando o seguinte comando:

      dotnet dev-certs https --trust
      

      O comando anterior não funciona no Linux. Veja a documentação da distribuição do Linux para confiar em um certificado.

      O comando anterior exibe a seguinte caixa de diálogo, contanto que o certificado não fosse anteriormente confiável:

      Security warning dialog

    • Selecione Sim se você concordar com confiar no certificado de desenvolvimento.

      Para obter mais informações, veja Confiar no certificado de desenvolvimento HTTPS do ASP.NET Core.

    Para obter informações sobre como confiar no navegador Firefox, consulte Erro de certificado Firefox SEC_ERROR_INADEQUATE_KEY_USAGE.

  3. Execute o comando a seguir:

    dotnet run
    

    O comando anterior:

    • Inicia Kestrel, o servidor Web interno do ASP.NET Core.
    • Exibe uma URL para testar o aplicativo Web, como http://localhost:<port>, onde <port> é o número da porta aleatório definido em Properties\launchSettings.json na criação do projeto.

    O resultado mostra mensagens semelhantes à seguinte, indicando que o aplicativo está em execução e aguarda solicitações:

    $ dotnet run
    Building...
    info: Microsoft.Hosting.Lifetime[14]
        Now listening on: https://localhost:7064
    info: Microsoft.Hosting.Lifetime[14]
        Now listening on: http://localhost:5119
    info: Microsoft.Hosting.Lifetime[0]
        Application started. Press Ctrl+C to shut down.
    info: Microsoft.Hosting.Lifetime[0]
        Hosting environment: Development
    info: Microsoft.Hosting.Lifetime[0]
        Content root path: D:\Src\MyMVCapp\
    
  4. Ctrl+clique na URL HTTPS na saída para testar o aplicativo Web em um navegador. No exemplo acima, a URL é https://localhost:7064.

  5. Pressione Ctrl+C no terminal integrado para desligar o aplicativo Web depois de testá-lo.

Gerar o pacote de implantação localmente

  1. No terminal integrado, use o seguinte comando para gerar um pacote Release em uma pasta localizada em bin/Publish:

    dotnet publish -c Release -o ./bin/Publish
    

    Uma nova subpasta Publish será criada na pasta bin. Essa pasta contém os arquivos a serem implantados no Azure.

    Publish folder structure

Publicar no Serviço de Aplicativo do Azure

Aproveitando a extensão do Serviço de Aplicativo do Azure para Visual Studio Code, siga as etapas a seguir para publicar o site diretamente no Serviço de Aplicativo do Azure.

Criar um recurso do Aplicativo Web do Azure

Se você não tiver um recurso existente do Aplicativo Web do Azure para publicar, crie um.

  1. Na guia extensão do Azure, no painel RECURSOS, expanda a assinatura que você deseja usar.
  2. Clique com o botão direito do mouse nos Serviços de Aplicativos e selecione Criar Novo Aplicativo Web....
  3. Siga os prompts:
    1. Insira um nome exclusivo para o aplicativo Web.
    2. Selecione o runtime estável mais recente do .NET (como .NET 6 (LTS)). Não selecione o runtime do ASP.NET, que é para aplicativos .NET Framework.
    3. Selecione seu tipo de preço. Gratuito (F1) é aceitável para este tutorial.

Publicar no Azure

  1. Clique com o botão direito do mouse na pasta bin\Publish, selecione Deploy to Web App... e siga os prompts.

    1. Selecione a assinatura em que o recurso de Aplicativo Web do Azure está localizado.
    2. Selecione o recurso de Aplicativo Web do Azure no qual você publicará.
    3. Selecione Implantar quando solicitado com uma caixa de diálogo de confirmação.
  2. Depois que a implantação for concluída, clique em Browse Website para validar a implantação.

    Deployment succeeded message

    Depois de clicar em Browse Website, você navegará para ele usando o navegador padrão:

    New Web App successfully deployed

Dica

Você pode repetir as etapas acima para reimplantar o aplicativo no mesmo recurso de Aplicativo Web do Azure, conforme necessário. Execute dotnet publish novamente antes de implantar no Azure.

Próximas etapas

Recursos adicionais