/Curso_Docker

Curso de Docker da Cod3r

Primary LanguageDockerfileMIT LicenseMIT

Docker
📚 🐳 Curso de Docker 🐳 📚

Andamento

📑 Tópicos

   |   🐳 Sobre o Docker   |   📖 Sobre o curso   |   💡 O que aprendemos   |   

|   🏗 Projetos   |   📜 Licença   |   🎓 Certificado de conclusão   |   

🐳 Sobre o Docker

⤴ Voltar
Docker é um conjunto de produtos de plataforma como serviço (PaaS - Platform as a Service) que usam virtualização a nível de sistema operacional para entregar software em pacotes chamados contêineres. Os contêineres são isolados uns dos outros e agrupam seus próprios softwares, bibliotecas e arquivos de configuração. Eles podem se comunicar uns com os outros por meio de canais bem definidos. Todos os contêineres são executados por um único kernel do sistema operacional e, portanto, usam menos recursos do que as máquinas virtuais.

Container Vs. VM

-> Contêineres são isolados, porém compartilham o Sistema Operacional Hospedeiro e, quando for apropriado, Arquivos biários e Bibliotecas. Como resultado tem um significante ganho de tempo na implementação (Deployment), muito menos sobrecarga, migração mais fácil e reinicialização mais rápida.

📖 Sobre o curso

⤴ Voltar
Lembra aquela frase: “Só sei que funciona na minha máquina”? O velho e bom selo de qualidade "Works On My Machine"? Pois bem, seja bem vindo ao Curso que vai acabar com essa desculpa!

Detalhando um pouco mais sobre o Docker, ele tem como tarefa central manipular os "containers". Ainda vou conceituar o que é container, mas a ideia é que o seu software possa ser executado em um ambiente isolado e que fique blindado o máximo possível de interferências externas. Rapidamente você perceberá que uma classe inteira de bugs será eliminada pela padronização entre o ambiente de desenvolvimento e o ambiente produtivo que o software será executado.

Outra vantagem incrível é a facilidade de replicar um ambiente Dockerizado para dezenas/centenas de desenvolvedores. Esqueça as longas horas para configurar o seu sistema na máquina de um novo dev, Isso sem dúvida será coisa do passado.

No curso você aprenderá os principais conceitos do Docker com vários exercícios práticos, todos descritos detalhadamente na apostila que será disponibilizada no curso. Tudo que for ministrado no curso estará disponível na apostila, e ter esse suporte a mais, será um diferencial fantástico.

Para finalizar, quero convidar você que é desenvolvedor, DevOps, para nos acompanhar nessa caminhada com o Docker, não tenho dúvida que o nível que profissionalismo dos seus ambientes será outro depois das aulas.

💡 O que aprendemos

⤴ Voltar

  • ✔ Utilizar containers para simplificar seus processos

  • ✔ Publicar suas imagens em ambientes na nuvem, seja para distribuição ou execução dos serviços

  • ✔ Utilizar ferramentas diversas de integração contínua baseado em containers

  • ✔ Criar imagens com seus produtos

  • ✔ Gerenciar conjuntos de micro serviços

    🗒 Etapas

  • 1. Introdução
    • 1.1. Visão Geral
    • 1.2. Apresentação - Juracy Filho
    • 1.3. Apresentação - Leonardo Leitão
    • 1.4. Material de Apoio: Repositório e Apostila
    • 1.5. Apostila Docker
    • 1.6. Suporte - Boas Práticas
  • 2. Conceitos
    • 2.1. O que é Docker?
    • 2.2. Por que não uma VM?
    • 2.3. O que são containers?
    • 2.4. O que são imagens Docker?
    • 2.5. Imagem vs Container
    • 2.6. Arquitetura
  • 3. Instalação
    • 3.1. Instalação - Visão Geral
    • 3.2. Instalação Windows
    • 3.3. Instalação Mac
    • 3.4. Instalação Linux
  • 4. Uso básico do Docker
    • 4.1. Introdução ao Docker Client
    • 4.2. Hello World: Meu Docker funciona!
    • 4.3. Meu querido amigo run
    • 4.4. Ferramentas diferentes
    • 4.5. Run cria sempre novos containers
    • 4.6. Containers devem ter nomes únicos
    • 4.7. Reutilizar containers
    • 4.8. Cego, surdo e mudo, só que não!
    • 4.9. Mapear portas dos containers
    • 4.10. Mapear diretórios para o container
    • 4.11. Rodar um servidor web em background
    • 4.12. Gerenciar o container em background
    • 4.13. Manipulação de containers em modo daemon
    • 4.14. Nova sintaxe do Docker Client
  • 5. Deixando de ser apenas um usuário
    • 5.1. Introdução
    • 5.2. Diferenças entre container e imagem
    • 5.3. Entendendo melhor as imagens
    • 5.4. Comandos básicos no gerenciamento de imagens
    • 5.5. Docker Hub × Docker Registry
    • 5.6. Meu primeiro build
    • 5.7. Uso das instruções de preparação
    • 5.8. Uso das instruções de povoamento
    • 5.9. Uso das instruções para execução do container (Parte 1)
    • 5.10. Uso das instruções para execução do container (Parte 2)
    • 5.11. Enviar Imagens para o Docker Hub
  • 6. Redes
    • 6.1. Visão Geral e Tipos de Redes
    • 6.2. Rede Tipo None (Sem Rede)
    • 6.3. Rede Tipo Bridge
    • 6.4. Rede Tipo Host
  • 7. Coordenando múltiplos containers
    • 7.1. Introdução
    • 7.2. Gerenciamento de micro service
  • 8. Projeto cadastro simples (CRUD)
    • 8.1. Estrutura Inicial
    • 8.2. Configurando Ambiente com Compose
    • 8.3. Finalizando o Cadastro
  • 9. Projeto de envio de emails com Workers
    • 9.1. Visão Geral
    • 9.2. Banco de dados
    • 9.3. Volumes
    • 9.4. Front-end
    • 9.5. Filas
    • 9.6. Proxy reverso
    • 9.7. Redes
    • 9.8. Workers
    • 9.9. Múltiplas instâncias
    • 9.10. Boas práticas - Variáveis de ambiente
    • 9.11. Override

Docker, ferramenta essencial para desenvolvedores!

🎓 Certificado

⤴ Voltar

Certificado de Conclusão

Validar Certificado: Clique Aqui

certificate logo PDF

🏗 Projetos

⤴ Voltar

  1. ✔ Repositório -> CRUD <- Concluído
  2. ✔ Repositório -> E-mails com Workers <- Concluído

📜 Licença

⤴ Voltar
Este repositório e seus exercícios, documentos e anotações estão sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

**O conteúdo do curso (Imagens, Apostila, Repositório) estão sob licença da COD3R.COM.BR para mais detalhes entre em contato em COD3R


Projeto desenvolvido com a tutoria de Juracy Filho e Leonardo leitão, na COD3R.