Apresentação sobre primeiros passos no uso de containers Docker. Palestra realizada em 03/10/2019 durante a Semana da Faculdade de Computação e Informática da Universidade Mackenzie em São Paulo-SP.
Renato Groffe - Experiência com Docker e Containers
1.
2. • 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 DevOps Professionals
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. Renato Groffe - Contatos
h t t p s : / / m e d i u m . c o m / @ re n a t o . g rof f e /
/renatogroffe /in/renatogroffe
/canaldotnet
/renatogroffe
/canaldotnet
/renatogroff
4. Agenda
• Docker: primeiros passos
• Dicas e truques na utilização de containers Docker
• Exemplos práticos
6. 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)
8. 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)
9. Principais usos
• Deployment de APIs REST e sites
• Arquitetura de microserviços
• Soluções escaláveis através do
uso de orquestradores e
alternativas do tipo PaaS
10. Por que utilizar containers Docker?
• Isolamento
• Utilização mais racional de recursos
• Rapidez no deployment
• Menor dependência do ambiente
15. 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
21. 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
22. 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
23. Docker Compose: exemplo prático
Criação de um ambiente com:
• SQL Server 2017
• SQL Server 2019 CTP 3.1
• PostgreSQL + pgAdmin 4
• MySQL + Adminer