Docker: Do Básico ao Avançado
What you'll learn
- Arquitetura do Docker
- Como o Docker é utilizado nas empresas para gerar valor
- Entender as primitivas do Linux que possibilitam a construção de um container, sem o uso do Docker
- Compreender o funcionamento do OverlayFS (sistema de arquivos em camadas)
- Tipos de networks no Docker (bridge, macvlan, overlay)
- Persistência de dados com Docker
- Como construir imagens otimizadas usando boas práticas no seu Dockerfile
- Técnica de multi-staging para redução de camadas
- Escrever código em Python para interagir com a API do Docker
- Docker-Compose para criação de múltiplos containers
- Criação e gerenciamento de cluster Docker Swarm
- Utilização de routing mesh no Docker Swarm
- Deploy do HAProxy altamente disponível com DNS Bind
- Encriptar tráfego de rede no Swarm
- Deploy do Wordpress em alta disponibilidade com NFS e Swarm
- Segurança no Docker com capabilities e seccomp
- Assinatura de imagens com Docker Content Trust
- Utilização de Docker Secrets
- Enviar comandos para Docker Engine de forma segura via TLS e SSH
Requirements
- Conhecimento em Linux
- Uma máquina física ou virtual com Linux
Description
Deixa eu te fazer algumas perguntas...
Tem dúvidas de como as empresas utilizam o Docker para gerar valor?
Quer começar a se especializar no mundo de containers?
Deseja aumentar a sua produtividade desenvolvendo software, utilizando o Docker para subir seu ambiente de testes localmente?
Essas são algumas das dúvidas que eu abordo ao longo do treinamento Docker: Do Básico ao Avançado. Este curso é 100% focado em Docker, desde como um container é criado por baixo dos panos utilizando recursos do kernel Linux, até o deploy de aplicações distribuídas em um cluster Docker Swarm.
Este treinamento foi projetado de forma cuidadosa, seguindo a lógica de complexidade dos assuntos relacionados ao Docker:
Introdução ao Docker: Neste módulo vamos entender diferenças de containers e VMs, por que utilizar, como as empresas usam para gerar valor, além de outros assuntos mais técnicos como a arquitetura e entender um container por trás dos panos.
Primeiros passos: Instalação do Docker, difereças de imagem e container, DockerHub.
Imagens, containers e OverlayFS: Aqui vamos aprender os comandos básicos para gerenciamento de imagens e containers, bem como entender o sistema de arquivos OverlayFS (a parte mais interessante na minha opinião). No momento que você entender como o sistema arquivos, tudo fará sentido sobre as "mágicas" que o Docker te entrega.
Networking: Vamos entender como funciona a comunicação container-to-container, de forma totalmente isolada. Além disso, temos um extra usando o modelo macvlan, simulando no GNS3 com Open vSwitch.
Storage: Containers são efêmeros, isso é, não persistem dados. Precisamos de um recurso para que isso funciona corretamente, e é onde os volumes entram em ação.
Build de imagens: A parte mais importante para o trabalho de um DevOps. Aqui vamos escrever instruções para o Docker construir artefatos imutáveis com o código da aplicação, que pode ser executado em qualquer máquina, em qualquer lugar. Imutabilidade e portabilidade. Tudo isso seguindo boas práticas do Dockerfile.
Multistaging e distribuição de imagens: Subimos mais o nível e vamos entender a técnica de multi-staging para reduzir o tamanho de imagens, além de entender sobre versionamento e distribuição de imagens.
Restart policies e events (+projeto): Nosso primeiro projeto, usando código Python para conectar na API do Docker e extrair informações, enviando alertas para o Discord.
Docker Compose: Essa é a feature mais interessante para desenvolvedores. Aqui vamos descrever a nossa aplicação, de forma que com um único comando, todo o ambiente de desenvolvimento esteja de pé em nossa máquina. E claro, funcione na máquina do coleguinha também.
Docker Swarm: Vamos aprofundar os conhecimentos colocando a aplicação no que seria a "produção", utilizando o modo Swarm, onde containers são distribuídos em diferentes hosts visando alta disponibilidade. Aqui temos 2 projetos práticos focados apenas nisso.
Security: Não menos importante, segurança! Vamos entender sobre permissionamento de containers, assinatura de imagens, encriptação da Docker CLI para um Docker Host remoto via TLS ou SSH.
Qual dúvida que você tiver relacionado ao material do treinamento, sinta-se à vontade para comentar nas aulas e eu vou responder assim que possível.
E aí, pronto para começar essa jornada?
Who this course is for:
- DevOps Engineers ou SREs buscando conhecimento específico em Docker
- Aspirantes a DevOps ou SRE buscando sua primeira vaga de emprego
- Desenvolvedores que querem adicionar Docker no seu leque de habilidades
- Estudantes de TI no geral que querem aprender mais sobre containers
Instructor
Entusiasta Linux e autodidata, com o objetivo de transformar assuntos complexos em explicações simples.
Já passei pelo maior Cloud Provider do mundo quando trabalhei e morei na Irlanda. Hoje, atuo como Lead DevOps Engineer de forma totalmente remota para o exterior.
CERTIFICAÇÕES LINUX:
Linux Professional Institute Certified, Level 3 - Linux Enterprise Professional
Linux Professional Institute Certified, Level 2 - Linux Engineer
Linux Professional Institute Certified, Level 1 - Linux Administrator
Linux Foundation Certified Engineer
Linux Foundation Certified Systems Administrator
CompTIA Linux+
Suse Certified Linux Administrator
OUTRAS CERTIFICAÇÕES:
Certified Kubernetes Administrator
OpenStack Foundation Certified OpenStack Administrator
Hashicorp Terraform Associate
AWS Solutions Architect Associate
AWS Developer Associate
CompTIA A+
ITIL Foundation
MCP Windows 8.1
GRADUAÇÃO:
Tecnólogo em Análise e Desenvolvimento de Sistemas