Docker: Containerização e Orquestração de Aplicações
- 20 horas
- Live
Live com Instrutor
Plataforma Imersiva
Aula gravada para revisão
Certificado de Participação
O Zabbix é uma plataforma de monitoramento robusta que pode ser integrada com Docker para monitorar e orquestrar aplicações em contêineres.
O Docker é uma plataforma de containerização de código aberto que simplifica a implantação de aplicativos ao empacotar o software e suas dependências em uma unidade padronizada chamada container. Ao contrário das máquinas virtuais tradicionais, os contêineres do Docker compartilham o kernel do sistema operacional do host, o que os torna mais eficientes e leves.
Neste curso você aprenderá a instalar e configurar o Docker, criar e gerenciar containers e usar o Docker Compose para trabalhar com múltiplos serviços.
Detalhes do produto
Perfil do Público
Desenvolvedores, administradores de sistemas, analistas de DevOps e profissionais de TI que desejam aprender a containerizar aplicações, simplificar ambientes de desenvolvimento e produção.
Pré-requisito
Conhecimento básico de linha de comando Linux e conceitos de redes (portas, IP). Experiência com qualquer linguagem de programação (Python, Node.js) é desejável.
Conteúdo Programático
- Introdução aos Containers e Fundamentos do Docker
- Compreender os conceitos fundamentais de containerização, a arquitetura do Docker e executar os primeiros containers.
- O Problema da Entrega de Software:
- “Funciona na minha máquina”: Entendendo o desafio da inconsistência entre ambientes.
- A necessidade de empacotamento e isolamento de aplicações.
- Containers vs. Máquinas Virtuais (VMs):
- Diferenças na arquitetura, consumo de recursos (CPU, memória, armazenamento) e tempo de inicialização.
- Vantagens dos containers: leveza, portabilidade e eficiência.
- Arquitetura do Docker:
- Docker Engine: O coração do Docker (daemon, API REST, CLI).
- Imagens: Modelos read-only com as instruções para criar um container.
- Containers: Instâncias run-time de uma imagem.
- Registries (Docker Hub): Repositórios para armazenar e distribuir imagens.
- Trabalhando com Imagens e Containers
- Dominar os comandos essenciais da CLI do Docker e aprender a construir imagens personalizadas usando Dockerfile.
- Comandos Essenciais da CLI:
- Ciclo de vida do container: docker run, docker ps (listar), docker stop, docker start, docker rm.
- Gerenciamento de imagens: docker images, docker rmi, docker pull.
- Criação de Imagens Personalizadas com Dockerfile:
- O que é um Dockerfile: arquivo de texto com instruções para construir uma imagem.
- Instruções fundamentais:
- FROM: Define a imagem base.
- COPY/ADD: Adiciona arquivos do host para a imagem.
- RUN: Executa comandos durante o build.
- CMD: Define o comando padrão executado ao iniciar o container.
- O processo de build: docker build -t nome-da-imagem.
- Gerenciamento de Dados e Rede
- Aprender a persistir dados gerados por containers e a configurar a rede para comunicação entre containers e com o mundo externo.
- Persistência de Dados:
- O problema: dados efêmeros dentro de containers.
- Volumes: Mecanismo gerenciado pelo Docker para persistir dados.
- Bind Mounts: Mapeamento de um diretório/arquivo específico do host para o container.
- Quando usar cada abordagem.
- Redes no Docker:
- A rede padrão bridge e containers isolados.
- Mapeamento de portas (-p host_port:container_port) para expor serviços.
- Comunicação entre containers na mesma rede.
- Introdução ao Docker Compose:
- Ferramenta para definir e orquestrar aplicações multi-container em um arquivo YAML.
- Estrutura do docker-compose.yml: definição de serviços, redes e volumes.
- Melhores Práticas e Introdução ao Ecossistema
- Aplicar boas práticas para criar imagens eficientes e seguras, e conhecer ferramentas adicionais do ecossistema Docker.
- Boas Práticas para Dockerfiles:
- Usar imagens oficiais e específicas (ex.: python:3.9-slim vs. python:3.9).
- Ordenar instruções para aproveitar o cache de build.
- Reduzir o tamanho final da imagem (multi-stage builds – conceito introdutório).
- Executar processos como usuário não-root.
- Segurança de Imagens:
- Introdução ao scan de vulnerabilidades: docker scan.
- Importância de manter imagens base atualizadas.
- Docker Hub e Registries:
- Explorando o Docker Hub: imagens oficiais, community.
- Comandos para docker login, docker push para enviar imagens personalizadas.
- Containerização de uma Aplicação Completa
- Consolidar todo o conhecimento em um projeto prático de containerização de uma aplicação multi-serviço realista.
- Revisão de Conceitos: Revisão rápida do fluxo completo: Dockerfile -> Build -> Compose -> Run.
- Definição do Desafio:
- Containerizar uma aplicação composta por: um frontend (ex.: Nginx ou React), um backend (ex.: Node.js/Python) e um banco de dados (ex.: Redis ou PostgreSQL).
- Análise da Aplicação: Identificar as dependências de cada componente.
- Criação de Dockerfiles: Desenvolver Dockerfiles individuais otimizados para o frontend e backend.
- Orquestração com Docker Compose: Criar um arquivo docker-compose.yml integrando todos os serviços, redes e volumes.
- Teste e Validação: Subir toda a aplicação com docker-compose up e validar seu funcionamento.
- Debug e Otimização: Discussão sobre problemas comuns e suas soluções durante o processo.
Recursos
- Aulas ao vivo com Instrutor especialista;
- Certificado de participação;
- Acesso a nossa plataforma de ensino imersiva e interativa com: videoaulas para revisão, acompanhamento do seu progresso e avaliação das aulas;
– Se precisar faltar, não se preocupe, pois disponibilizamos a gravação da sua turma por 30 dias.
– Após a contratação, você já terá acesso aos conteúdos e videoaulas completas disponíveis na nossa plataforma.
Prazo de Realização
O prazo máximo é de 6 meses para realizar a totalidade dos cursos adquiridos, contados a partir da contratação.Desenvolvedores, administradores de sistemas, analistas de DevOps e profissionais de TI que desejam aprender a containerizar aplicações, simplificar ambientes de desenvolvimento e produção.
Por que estudar na green?
- Mais de 3 décadas desenvolvendo profissionais;
- Mais de 458.000 alunos treinados;
- Mais de 8.000 empresas atendidas;
- Centro Oficial Microsoft, AWS, Linux, CISCO e EXIN;
- Centro de Exames VUE, PSI, PeopleCert e EXIN;
- Turmas Abertas em Calendário ou Turmas Fechadas (ou In-Company);
- Instrutores especialistas e dinâmicos com anos de experiência;
- Módulos que aliam teoria à prática, preparando para o mercado e dia a dia.
Recursos
- Aulas Live: ao vivo com o instrutor e demais alunos, tudo em tempo real, como se você estivesse em sala de aula. Você assiste às aulas de forma remota e interage com o professor por voz/vídeo ou chat, e detalhe: pode aprender de qualquer lugar, basta um computador/laptop com acesso à Internet;
- O aluno tem acesso ao nosso LMS: videoaulas (exceto AWS) + recursos de apoio por no mínimo 30 dias;
- Material didático digital e Certificado de conclusão de curso;
- Suporte ao aluno por chat, telefone, e-mail ou presencial;
- Você não está sozinho! Cuidamos da sua jornada de capacitação te auxiliando e acompanhando seu progresso.
Vantagens para empresas
- Módulos Live/Presencial com flexibilidade de datas e horários: escolha a duração e o calendário que melhor se adequam à rotina da sua organização;
- Desenvolvemos conteúdos personalizados em diversos formatos (presencial, live, videoaulas) para atender às diferentes necessidades das equipes;
- Turmas fechadas: presencial na Green, Live ou in-company em qualquer lugar do Brasil;
- Monitoramento contínuo dos planos de aprendizagem e relatórios do desempenho dos colaboradores.
FAÇA JÁ A SUA MATRÍCULA!
Selecione a Turma/Exame e matricule-se. Ou, se preferir, clique aqui, preencha o formulário e nossos consultores entrarão em contato para esclarecer suas dúvidas.
Se quiser conversar diretamente com nossos consultores, entre em contato por WhatsApp clicando aqui.