O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Introdução ao docker

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 22 Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Semelhante a Introdução ao docker (20)

Anúncio

Mais recentes (20)

Introdução ao docker

  1. 1. Introdução ao
  2. 2. Quem sou eu? ● Aluno do BC&T ● Engenheiro de software no Elo7 ● Instrutor na Caelum
  3. 3. Motivação ● Comprei um servidor e quero montar uma empresa de hospedagem. ● Preciso hospedar o site de 3 clientes no meu servidor Linux. ● Cada site utiliza uma stack diferente de tecnologias, um utiliza Java, outro utiliza Ruby e o último utiliza PHP.
  4. 4. Motivação HARDWARE SISTEMA OPERACIONAL
  5. 5. Problemas ● Se um dos sites dos meus clientes receber um volume muito grande de requisições a performance dos sites dos outros clientes ficará comprometida. ● Eu tenho que atualizar a versão do Java, Ruby e PHP para todos os clientes de uma só vez pois não tenho isolamento entre eles.
  6. 6. ● Vou usar máquinas virtuais. ● Consigo separação entre as stacks de tecnologias. ● Consigo definir qual a capacidade de hardware que posso dar para uma máquina virtual. ● Ganho a possibilidade de executar outras distribuições Linux e até servidores Windows dentro da minha VM. Solução
  7. 7. Solução HARDWARE SISTEMA OPERACIONAL SISTEMA OPERACIONAL SISTEMA OPERACIONAL SISTEMA OPERACIONAL HYPERVISOR
  8. 8. Outros problemas ● Máquinas virtuais causam perda de performance ● Máquinas virtuais demoram para iniciar
  9. 9. Outra solução ● Vou utilizar LinuX Containers, que é a junção de três ferramentas do kernel do Linux: cgroups, namespaces e chroot. ● Ganho performance pois não preciso mais do hypervisor e dos sistemas operacionais virtualizados. ● Continuo com o isolamento entre as stacks dos sites. ● Consigo definir o quanto de hardware cada site poderá consumir.
  10. 10. Motivação HARDWARE SISTEMA OPERACIONAL
  11. 11. Mais um problema ● Se meu servidor parar e eu precisar recriar os meus containers?
  12. 12. Solução final ● Agora sim! Vou usar Docker! ● Ele é escrito em Go, usa por baixo dos panos LinuX Containers. ● Me permite criar imagens dos containers que podem ser executadas quantas vezes eu quiser
  13. 13. LIVE CODING
  14. 14. Usando Docker em desenvolvimento ● Tenho um projeto Java que depende do MySQL para executar. ● Posso usar o Docker para não precisar instalar o MySQL no meu computador.
  15. 15. OUTRO LIVE CODING
  16. 16. Usando Docker em produção ● Vou resolver o famoso problema da computação: “mas no meu computador funcionou”.
  17. 17. Prometo que é o ÚLTIMO LIVE CODING
  18. 18. ● Como faço para gerenciar muitos containers? ● Eu preciso realmente usar um sistema operacional “completo” se eu executar todos meus sites dentro de containers? Problemas para o meu “eu do futuro”
  19. 19. Soluções para o meu “eu do futuro”
  20. 20. Livros https://www.casadocodigo.com.br/products/livro-docker https://www.manning.com/books/docker-in-action Cursos online https://www.alura.com.br/curso-online-docker Para saber mais
  21. 21. Live coding https://github.com/newton-beck/palestra-bcc-docker Slides https://pt.slideshare.net/NewtonAngelini Acesso aos recursos da palestra
  22. 22. Dúvidas!? Danke schön

×