wmc16 - introdução ao docker

Post on 22-Feb-2017

188 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Empoderar é o primeiro passo para novas revoluções

womakerscode.org

Pedro Cavalheiro

womakerscode.org

https://about.me/pedrocavalheiro

https://github.com/pecavalheiro

https://www.linkedin.com/in/pecavalheiro

@pecavalheiro

http://pt.slideshare.net/PedroCavalheiro

Introdução

Introdução

O que é Docker?

● Uma plataforma aberta (open source)

● Foco em aplicações distribuídas

● Voltada para desenvolvedores e sysadmins.

● Padroniza e facilita o provisionamento de dependências.

womakerscode.org

Introdução

Quem está usando?

womakerscode.orgDetalhes em: https://www.docker.com/customers

Introdução

Por que é tão popular?

● Deploy de aplicações sempre foi algo complexo.

● Docker resolve melhora muito este processo.

womakerscode.org

Once upon a time...

Once upon a time...

Como eram os servidores de aplicações?

womakerscode.org

LAMP

Once upon a time...

Hoje em dia:

womakerscode.org

Once upon a time...

O inferno de um sysadmin:

womakerscode.org

Once upon a time...

O transporte de cargas, pré 1960:

womakerscode.org

Once upon a time...

O inferno de uma transportadora:

womakerscode.org

Once upon a time...

Solução:

womakerscode.org

Once upon a time...

O inferno de um sysadmin:

womakerscode.org

Once upon a time...

Solução:

womakerscode.org

Containers!

Containers!

VMs x Containers

womakerscode.org

Containers!

VMs x Containers

womakerscode.org

VM Docker (container)

● Customização manual

● Conflito de libs e dependências

● Snapshot

● Alterações custosas

● Overhead de performance

● Demanda mais espaço físico

● Dockerfile (esp. configurações)

● Diff, redução no espaço necessário

● Kernel compartilhado, sem hypervisor

● Sem conflitos de dependências

● Processos isolados

● Deploy rápido e prático

Containers!

Mas da pra rodar _______?

● Um container é virtualmente capaz de executar qualquer

processo que o host também é.

○ Databases (PostgreSQL, MySQL, Redis, MongoDB, etc)

○ Servidores Web (Apache, Nginx, Node.js, Rails, etc)

○ Aplicações Stand Alone (.py, .jar, .rb, etc)

○ *

womakerscode.org

Docker

Containers!

Links úteis

● https://www.docker.com/

● https://github.com/veggiemonk/awesome-docker

● https://hub.docker.com/

● https://www.google.com

womakerscode.org

Demo Time!

Obrigado!

top related