Publicando uma aplicação Asp.NET Core no IIS

Olá pessoal, ja faz um tempo do meu post sobre como publicar uma aplicação no IIS, e agora, como temos novas tecnologias, chegou a hora de mostrar como fazer a publicação de uma aplicação Asp.Net Core!

Mas por quê desenvolver em .Net Core ?

Existem centenas de artigos explicando as vantagens, mas vou colocar aqui apenas dois pontos: Velocidade e facilidade no desenvolvimento!
Velocidade porque o Asp.Net Core é muitas vezes mais rápido que o Asp.Net convencional. Veja aqui alguns benchmarks
Facilidade pois você tem maior controle sobre toda a aplicação e como ela irá funcionar!
Não podemos esquecer também que uma aplicação Asp.Net Core é multi plataforma: Windows, Linux e Mac.

Fazendo a publicação no IIS!

Inicialmente vou criar uma aplicação bem simples usando a linha de comandos:

dotnet new mvc

Este comando irá criar uma aplicação padrão Asp.Net Core MVC. Você pode também criar a aplicação usando o Visual Studio 2017!

Agora vamos publicar esta aplicação em um diretório, que depois será adicionado ao IIS:

dotnet publish –o c:\temp\core

Veja mais informações sobre o comando dotnet publish aqui.

Agora temos os arquivos da publicação no diretório c:\temp\core:

Vamos então publicar no IIS, mas antes disto, precisamos instalar o Windows Server Hosting do Asp.Net Core, que você encontra no site do DotNet Core, vamos baixar e instalar:

O Windows Server Hosting é quem irá realizar a execução das aplicações.

Agora vamos para o IIS!

Primeiro vamos criar um Application Pool para nossos sites em Asp.Net Core, para isto abra o IIS, vá em Application Pools e clique em “Add Application Pool…”

No nosso exemplo estamos criando um Application Pool chamado “Asp.Net Core”, e o segredo aqui é colocar “No Managed Code”, isto porque o WebHost que instalamos irá fazer o gerenciamento da aplicação.

Agora é só criarmos nossa aplicação e colocarmos neste pool. Lembrando que para criar a aplicação basta clicar com o botão direito em Site e depois em Add Application:

Depois criamos a nossa aplicação:

Veja que colocamos o pool que acabamos de criar e apontamos o diretório de publicação da aplicação!

E pronto, você já pode acessar o endereço: http://localhost/teste

Abraços e até a próxima!
Carlos dos Santos.