
Docker Essencial
Construção de Aplicações Containerizadas para Engenheiros de Dados

Rafael Sanches
Tech Manager | Software Engineering | Data Engineering | M.Sc
8 horas
10 capítulos
Iniciante
Adquirir acesso
Descrição do Curso
Conteúdo do Curso
1
O que é Docker?
Definição da Tecnologia
2
Um pouco de História
Explorando o histórico
3
Máquinas Virtuais x Containers (Parte 1)
Diferenças entre máquina virtual e container
4
Máquinas Virtuais x Containers (Parte 2)
Diferenças entre máquina virtual e container
5
Instalação
Preparando o Ambiente
6
Casos de Uso
Desenvolvimento Local, Testes Automatizados, CI/CD, Deploy em Produção
7
Benefícios
Por que usar Docker?
8
Arquitetura Docker (Parte 1)
Cliente, Docker Host e Registry
9
Arquitetura Docker (Parte 2)
Fluxo de Execução
1
Comandos Básicos (Parte 1)
Gestão de Imagens
2
Comandos Básicos (Parte 2)
Gestão de Containers
3
Imagens e Containers (Parte 1)
Construindo sua imagem
4
Imagens e Containers (Parte 2)
Construindo sua imagem
1
Definição
O que é Dockerfile?
2
Principais Comandos
FROM, WORKDIR, COPY, RUN, CMD, EXPOSE, ENV
3
Comunicando com API
Construindo projeto Python
4
DockerFile
Gerando imagem do nosso projeto
5
Build e Run
Criando Imagem e Gerando Container
1
Dados Efemeros e Dados Persistentes
Conceito de persistência e aplicações stateful
2
Volume Binds
Controle de Arquivos fora do Container
3
Prática Binds - Introdução
Definindo Projeto
4
Prática Binds - Write
Adaptando projeto para escrita em Bind
5
Prática Binds - Read
Adaptando projeto para leitura de dados de Bind
6
Prática Volumes
Um projeto diferente para lidar com volumes
1
Teoria
O essencial de redes no Docker
2
Prática - Bridged
Conecte múltiplos containers
3
Prática - Host
Contêineres Autônomos de Rede
1
Bancos de Dados Containerizados
Simule bancos de dados em ambiente local
2
Criando MySQL com Docker
Construindo um banco de dados
1
O que é Docker Compose?
Automatize a geração de containers
2
Diferenças entre DockerFile e Docker Compose
Unindo os pontos
3
Melhorando o projeto de Banco de Dados
Lidando com Credenciais
4
Construindo DockerFile da Aplicação
Gerando imagem do aplicativo Python
5
Desenvolvendo primeiro serviço
Iniciando construção do Docker Compose
6
Gerando serviço da aplicação Python e Conectando com Banco de Dados
Finalizando Docker Compose e Execução
1
Contextualizando
Uso de Ferramentas de Processamento em Container: Apache Spark
2
Construindo Cluster Spark
Criando Docker Compose
3
Gerando PySpark Job
Construindo Script Python
4
Execução do Job no Cluster
Executando e Utilizando Container
1
Segurança
Boas práticas de Segurança em Containers
2
Monitoramento
Monitoramento Contínuo em Ambientes Docker
3
Docker Stats
Métricas dos Containers
4
Arquitetura de Monitoramento
Prometheus e Grafana
5
Aplicação Python Flask
Gerando aplicação Python de Exemplo
6
Configurações de Projeto
Construindo Docker Compose
7
Prometheus
Executando e Realizando Ajustes
8
Trabalhando com Grafana
Gerando visualizações
1
Escopo e Arquitetura
Base de Dados, Extractor e Processor
2
Data Extractor
Construindo componente de extração de dados
3
Data Processor
Processando Dados
4
Imagem da Aplicação Python
Criando DockerFile
5
Docker Compose Up
Subindo projeto e testando
1
Emissão de Certificado
Instruções para Emissão de Certificado
O que Você Vai Aprender
- Introdução Docker
- Imagens e Containers
- Principais Comandos
- DockerFile para Geração de Imagens
- Docker Compose para Geração de Containers
- Banco de Dados como Container
- Construindo Cluster Spark com Docker
- Pipelines de Dados como Containers
- Segurança e Monitoramento com Prometheus e Grafana em Containers