ASP .NET Core 3.1 - Conteinerizando uma aplicação ASP .NET Core MVC


 Neste artigo veremos como criar uma aplicação Web MVC e conteinerizar essa aplicação usando o Docker. Vou usar a versão 3.1 do .NET Core SDK, da ASP .NET e do runtime.

O objetivo deste artigo é mostrar como usar o Docker para criar um contêiner com uma aplicação ASP .NET Core MVC.

Se você não sabe o que é Docker acompanhe meu curso rápido sobre o assunto neste link:  Macoratti - Curso Docker

Vamos iniciar criando a aplicação ASP .NET Core MVC e a seguir vamos definir um modelo de domínio bem simples onde vamos trabalhar apenas com objetos sem usar um mecanismo de persistência para tornar a aplicação mais simples.

Após criar a aplicação MVC vamos criar um contêiner para executar essa aplicação usando o Docker e para isso vamos criar um Dockerfile que irá criar nossa imagem e finalmente camos criar o contêiner.

Eu vou usar o Docker instalado no ambiente Linux usando uma distribuição Ubuntu 18.04.

Acompanhe as aulas do meu minicurso Docker Essencial para a plataforma .NET :

  1. Como instalar o Ubuntu em uma máquina virtual - Minicurso Docker - Preparando o ambiente - Macoratti
  2. Instalando o .NET Core SDK no ambiente Linux -  Minicurso Docker - Instalando o .NET Core - Macoratti.net
  3. Instalando o Docker no ambiente Linux -  Minicurso Docker - Instalando o Docker - Macoratti
  4. Instalando o Linux no Ubuntu

Nota:  Você deve instalar as extensões C# e C# Extensions no VS Code para trabalhar com o C#.

recursos usados:

  • Linux Ubuntu 18.04
  • .NET Core SDK 3.1
  • Visual Studio Code
  • Docker

Criando o projeto usando a NET CLI

Vamos criar o projeto usando a ferramenta de linha de comando NET CLI e a seguir vamos editar o código usando o Visual Studio Code.

Antes de iniciar verifique o seu ambiente abrindo a máquina virtual Linux e a seguir abrindo um terminal e digitando os comandos:

dotnet --version
docker --version

A seguir vamos criar o projeto MVC.

Eu vou criar uma pasta chamada mvc31 dentro de uma pasta projetos para armazenar o projeto criado.

Digite os comandos no terminal:

mkdir mvc31
cd mvc31

Estando na pasta onde vamos criar o projeto digite o comando:

dotnet new mvc

Estamos criando uma aplicação ASP NET Core MVC chamada mvc31.

Exibindo o conteúdo da pasta via comando ls -g temos:

Observe a estrutura do projeto que contém as pastas : Controllers, Models, Views, wwwroot , o arquivo do projeto webmvc.csproj e o arquivo Startup.cs.

Vamos alterar o arquivo Index.cshtml da pasta /Views/Home conforme o código abaixo :

@{
    ViewData["Title"] = "Home Page";
}
<div class="text-center">
    <h2 class="display-4">Bem-Vindo</h1>
    <br/>
    <h3>Testando ASP .NET Core MVC 3.1 com Docker</h3>
</div>

 

Assim poderemos identificar facilmente a página inicial do nosso projeto.

Podemos executar a aplicação digitando : dotnet run e verificar que ela esta funcional acessando o navegador no endereço: https://localhost:5001

Dessa forma temos nossa aplicação ASP .NET Core executada no ambiente Linux.

Na próxima parte do artigo vamos criar uma imagem usando um Dockerfile e a seguir criar um contêiner para executar nossa aplicação no Docker.

"Tendo sido, pois, justificados pela fé, temos paz com Deus, por nosso Senhor Jesus Cristo;
Pelo qual também temos entrada pela fé a esta graça, na qual estamos firmes, e nos gloriamos na esperança da glória de Deus."

Romanos 5:1,2

 

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti