Fala pessoal, no post de hoje vou mostrar como criar uma WEB API .NET CORE na versão 3.1 e como criar a imagem docker dessa API bem como disponibilizar a imagem no Docker Hub.
Faça a instalação da última versão do .net core, no meu caso estou utilizando a versão 3.1.102 , para verificar a instalação utilize o comando:
dotnet --version
Vamos agora criar a aplicação utilizando o dotnet cli com o comando:
dotnet new webapi -o HelloAspNetCore --no-https
Depois de criar a aplicação entre na pasta HelloAspNetCore e digite o comando abaixo para entrar no Visual Studio Code (estou presumindo que já possua o mesmo instalado em sua maquina) :
code .
Dentro do Visual Studio Code caso apareça o popup abaixo, clique em “Yes”, essa configuração é importante para debugar a aplicação posteriormente.
Caso não tenha ainda instalado a extensão do docker no seu Visual Studio Code, agora é o momento localize e instale a seguinte extensão:
Vamos rodar a aplicação sem as configurações do docker e testar na ferramenta Postman, para isso clique no icone de debug do visual studio e rode o .NET Core Lunch:
Para testar no Postman, abra a ferramenta e faça um request para http://localhost:5000/weatherforecast :
Vamos agora criar as configurações para trabalhar com o docker, acesse os comandos do visual studio com CONTROL+SHIFT+P e digite o sequinte comando
>docker: add
Selecione a plataforma da aplicação como ASP.NET CORE e depois o sistema operacional LINUX e por último defina a porta como 80, depois é só dar um “Enter” e o arquivo Dockerfile será criado na raiz da aplicação:
Agora vamos gerar a imagem docker com o comando:
docker build -t hello-aspnetcore:v1 .
Depois do processo executado vamos verificar as imagens geradas com o comando:
docker images
Vamos agora rodar a imagem docker com nossa API com o comando:
docker run -it --rm -p 8080:80 hello-aspnetcore:v1
Agora podemos chamar pelo Postman com a url de sua imagem:
Pode também agora verificar pelo dashboard do docker instalado em sua máquina:
Agora para ficar melhor ainda vamos subir a imagem para seu repositório docker, aqui estou presumindo que você já tenha uma conta no docker ok?
Para subir sua imagem o primeiro passo é efetuar o login no dockerhub, provavelmente você já estará logado caso use o dashboard, para isso rode o comando e preencha os dados de login solicitado pelo cli:
docker login
Depois vamos executar o comando para subir no repositório remoto:
docker tag 5edb203a8971 mdcarmo/hello-aspnetcore:v1
E para finalizar vamos fazer o push para o hub:
$ docker push <hub-user>/<repo-name>:<tag>
docker push mdcarmo/hello-aspnetcore:v1
Obviamente nos comandos acima estou enviando o meu usuário, basta você trocar pelo seu ok? se tudo correr bem o seu repositório aparecerá no dockerHub
É isso por hoje, muito se fala em docker hoje em dia então é bom aprender, não tenho experiencia com a ferramenta portanto posso ter errado em algum passo ou ter alguma forma melhor e mais fácil de fazer, mas assim funcionou para mim. Se gostou ou ajudou a tirar alguma dúvida deixa um like ou um comentário ae para fortalecer.