Curso Docker para Desenvolvedores

  • DevOps | CI | CD | Kubernetes | Web3

Curso Docker para Desenvolvedores

24 horas
Visão Geral

Este Curso Docker para Desenvolvedores, foi projetado para desenvolvedores que desejam dominar o uso do Docker no ciclo de desenvolvimento de software. O aluno aprenderá desde os fundamentos de containers até a construção, otimização e publicação de imagens, além de práticas de integração com pipelines de CI/CD e execução em ambientes de nuvem. O foco está em aplicar Docker para aumentar a produtividade, padronizar ambientes e acelerar entregas.

Objetivo

Após realizar este curso Docker para Desenvolvedores, você será capaz de:

  • Compreender o conceito de containers e sua diferença em relação a máquinas virtuais.
  • Criar, gerenciar e otimizar imagens Docker.
  • Utilizar volumes e redes para aplicações distribuídas.
  • Criar ambientes de desenvolvimento consistentes e portáteis.
  • Publicar e compartilhar imagens em registries.
  • Integrar Docker em pipelines de desenvolvimento e CI/CD.
Publico Alvo
  • Desenvolvedores de software que desejam criar, executar e compartilhar aplicações com Docker.
  • Engenheiros DevOps e profissionais de infraestrutura interessados em ambientes containerizados.
  • Estudantes e profissionais que estão iniciando com containers.
  • Equipes de desenvolvimento que precisam padronizar ambientes de execução.
Pre-Requisitos
  • Conhecimentos básicos de sistemas operacionais (Linux/Windows).
  • Noções de desenvolvimento de software em qualquer linguagem.
  • Familiaridade com linha de comando.
Materiais
Português + Exercícios + Lab Pratico
Conteúdo Programatico

Introdução ao Docker e Containers

  1. O que são containers e por que usá-los
  2. Diferenças entre containers e máquinas virtuais
  3. Arquitetura do Docker: Engine, CLI e Daemon
  4. Instalando e configurando Docker no ambiente local

Trabalhando com Containers

  1. Executando o primeiro container (docker run)
  2. Inspecionando containers em execução
  3. Gerenciando containers: start, stop, restart, rm
  4. Interagindo com containers: logs e exec

Imagens Docker

  1. Obtendo imagens do Docker Hub
  2. Criando imagens a partir de containers
  3. Introdução ao Dockerfile
  4. Construindo imagens customizadas com docker build
  5. Boas práticas para imagens pequenas e seguras

Volumes e Persistência de Dados

  1. Diferença entre volumes e bind mounts
  2. Criando volumes para persistência
  3. Compartilhando dados entre containers
  4. Cenários de persistência em aplicações reais

Redes no Docker

  1. Redes bridge, host e overlay
  2. Comunicação entre containers
  3. Criando redes customizadas
  4. Expondo aplicações para o mundo externo

Docker Compose para Desenvolvedores

  1. O que é Docker Compose
  2. Criando o primeiro docker-compose.yml
  3. Orquestração de múltiplos serviços (ex.: app + banco de dados)
  4. Ambientes de desenvolvimento com Compose

Registries e Compartilhamento de Imagens

  1. Introdução ao Docker Hub
  2. Autenticação e push de imagens
  3. Configuração de registries privados
  4. Uso de registries em pipelines de CI/CD

Docker no Ciclo de Desenvolvimento

  1. Criando ambientes consistentes de desenvolvimento
  2. Integração com frameworks e linguagens (Node.js, Python, Java, etc.)
  3. Debugging em containers
  4. Docker e integração contínua (GitLab CI, GitHub Actions, Jenkins)

Boas Práticas e Casos Reais

  1. Estruturação de Dockerfiles para produção
  2. Multistage builds
  3. Gerenciamento de dependências em containers
  4. Casos práticos: rodando uma aplicação web em Docker

Projeto Final

  1. Construção de uma aplicação containerizada completa
  2. Uso de Docker Compose para orquestrar múltiplos serviços
  3. Publicação no Docker Hub
  4. Execução em pipeline de CI/CD
TENHO INTERESSE

Cursos Relacionados

Curso Ansible Red Hat Basics Automation Technical Foundation

16 horas

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Curso Ansible Linux Automation with Ansible

24 horas

Ansible Overview of Ansible architecture

16h

Advanced Automation: Ansible Best Practices

32h