• Microsoft Most Valuable Professional (MVP)
• Multi-Plataform Technical Audience
Contributor (MTAC)
• Mais de 15 anos de experiência na área de
Tecnologia
• Autor Técnico e Palestrante
• Um dos organizadores do Canal .NET, do .NET
São Paulo e do SampaDevs
Renato Groffe
h t t p s : / / m e d i u m . c o m / @ re n a t o . g rof f e /
• Microsoft Most Valuable Professional (MVP)
• Desenvolvedor de Software na TV Bandeirantes
• Autor Técnico e Palestrante
• Um dos organizadores do .NET SP e do
SampaDevs
Thiago Adriano
h t t p s : / / m e d i u m . c o m / @ p ro g r a m a d r i a n o /
Agenda
• .NET Core e Angular: uma visão geral
• Um pouco mais sobre Docker
• Docker Compose: deployment de aplicações e suas dependências
• Exemplo prático
.NET Core e ASP.NET Core – Visão Geral
• Atualmente na versão 2.2
• Versão 3.0 em Preview
• Aplicações Web mais leves e rápidas
• Multiplataforma (execução em Windows, Linux e Mac)
• Suporte a Docker
• Compatível com .NET Standard
Angular – Visão Geral
• Atualmente na versão 7
• Angular CLI na versão 8.0.0-beta.0
• Open Source
• Um dos frameworks JavaScript mais populares
Um pouco mais sobre
Conceitos Fundamentais
• Imagens → base para criação de
containers, são geradas a partir do
arquivo Dockerfile; contém todos os
arquivos e dependências de uma
aplicação – incluindo sistema operacional
• Containers → pacote com tudo que é
necessário para a execução de uma
aplicação (serviço, site, API)
Arquitetura
Onde encontrar imagens?
Imagens Alpine
• Baseadas na distribuição Alpine Linux
• Preocupação com segurança e
simplicidade
• Imagens Docker menores (contendo
apenas o mínimo necessário para a
execução da aplicação)
Principais usos
• Deployment de APIs REST e sites
• Integração contínua (Jenkins,
VSTS)
Principais usos
• Arquitetura de microserviços
Principais usos
• Soluções escaláveis através do uso de
orquestradores e alternativas do tipo PaaS
Por que utilizar containers Docker?
• Isolamento
• Utilização mais racional de recursos
• Rapidez no deployment
• Menor dependência do ambiente
E com isto temos o fim do “bordão”...
Mas é só isso?
O que mais podemos utilizar com Docker?
• Serviços de processamento
contínuo
• Servidores de bancos de dados
• Rotinas de processamento em
geral
Algumas tecnologias com suporte a Docker
Montando ambientes de testes com containers
• Rapidez na instalação
• Desinstalação sem grandes dificuldades
• Diferentes versões de um software numa mesma máquina
Como conciliar projetos, dependências e
containers?
Docker Compose é a resposta!
Docker Compose: uma visão geral
• Criação e execução conjunta dos
múltiplos containers de uma aplicação
• Facilita o deployment em ambientes de
desenvolvimento e testes
• Suporte a integração contínua
Docker Compose: uma visão geral
• É comum a criação de networks (redes) do
Docker para deployment
• Arquivo com configurações no formato YAML
(docker-compose.yml)
• Suporte também do Visual Studio Code
ASP.NET Core 2.2 + Angular 7 + Docker Compose
+ +
medium.com/@renato.groffe/
medium.com/@programadriano/

Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party Brasil 2019

  • 2.
    • Microsoft MostValuable Professional (MVP) • Multi-Plataform Technical Audience Contributor (MTAC) • Mais de 15 anos de experiência na área de Tecnologia • Autor Técnico e Palestrante • Um dos organizadores do Canal .NET, do .NET São Paulo e do SampaDevs Renato Groffe h t t p s : / / m e d i u m . c o m / @ re n a t o . g rof f e /
  • 3.
    • Microsoft MostValuable Professional (MVP) • Desenvolvedor de Software na TV Bandeirantes • Autor Técnico e Palestrante • Um dos organizadores do .NET SP e do SampaDevs Thiago Adriano h t t p s : / / m e d i u m . c o m / @ p ro g r a m a d r i a n o /
  • 4.
    Agenda • .NET Coree Angular: uma visão geral • Um pouco mais sobre Docker • Docker Compose: deployment de aplicações e suas dependências • Exemplo prático
  • 5.
    .NET Core eASP.NET Core – Visão Geral • Atualmente na versão 2.2 • Versão 3.0 em Preview • Aplicações Web mais leves e rápidas • Multiplataforma (execução em Windows, Linux e Mac) • Suporte a Docker • Compatível com .NET Standard
  • 6.
    Angular – VisãoGeral • Atualmente na versão 7 • Angular CLI na versão 8.0.0-beta.0 • Open Source • Um dos frameworks JavaScript mais populares
  • 7.
  • 8.
    Conceitos Fundamentais • Imagens→ base para criação de containers, são geradas a partir do arquivo Dockerfile; contém todos os arquivos e dependências de uma aplicação – incluindo sistema operacional • Containers → pacote com tudo que é necessário para a execução de uma aplicação (serviço, site, API)
  • 9.
  • 10.
  • 11.
    Imagens Alpine • Baseadasna distribuição Alpine Linux • Preocupação com segurança e simplicidade • Imagens Docker menores (contendo apenas o mínimo necessário para a execução da aplicação)
  • 12.
    Principais usos • Deploymentde APIs REST e sites • Integração contínua (Jenkins, VSTS)
  • 13.
  • 14.
    Principais usos • Soluçõesescaláveis através do uso de orquestradores e alternativas do tipo PaaS
  • 15.
    Por que utilizarcontainers Docker? • Isolamento • Utilização mais racional de recursos • Rapidez no deployment • Menor dependência do ambiente
  • 16.
    E com istotemos o fim do “bordão”...
  • 17.
  • 18.
    O que maispodemos utilizar com Docker? • Serviços de processamento contínuo • Servidores de bancos de dados • Rotinas de processamento em geral
  • 19.
    Algumas tecnologias comsuporte a Docker
  • 20.
    Montando ambientes detestes com containers • Rapidez na instalação • Desinstalação sem grandes dificuldades • Diferentes versões de um software numa mesma máquina
  • 21.
    Como conciliar projetos,dependências e containers?
  • 22.
    Docker Compose éa resposta!
  • 23.
    Docker Compose: umavisão geral • Criação e execução conjunta dos múltiplos containers de uma aplicação • Facilita o deployment em ambientes de desenvolvimento e testes • Suporte a integração contínua
  • 24.
    Docker Compose: umavisão geral • É comum a criação de networks (redes) do Docker para deployment • Arquivo com configurações no formato YAML (docker-compose.yml) • Suporte também do Visual Studio Code
  • 26.
    ASP.NET Core 2.2+ Angular 7 + Docker Compose + +
  • 28.