Vagrant vs Docker?
Melhor Vagrant + Docker
About me
$nome = 'Wellington F. Silva';
$nick = ['_wsilva, 'tom', 'boina', 'fisi', 'iéié'];
$work = 'devop';
$background = '~2000';
$titles = ['ZCE PHP 5.3', 'Técnico
Telecom', 'Quase Bacharel SI - USP'];
$contact = ['twitter' => '_wsilva'];
Overview
● Problema da padronização
● Soluções
● Virtualização
● Conteinerização
● Comparação
● Vagrant
● Demo
● Bate papo
O problema
O problema
O problema
O problema
Exemplos:
● php substr vs mb_substr
O problema
Exemplos:
● php substr vs mb_substr
● valor default current_timestamp (MySQL vs
Percona)
Soluções
● Trabalhar direto no servidor (FTP)
Soluções
● Trabalhar direto no servidor (FTP)
● Montar na unha o ambiente de cada projeto
Soluções
● Trabalhar direto no servidor (FTP)
● Montar na unha o ambiente de cada projeto
● Virtualizar
Soluções
● Trabalhar direto no servidor (FTP)
● Montar na unha o ambiente de cada projeto
● Virtualizar
● Conteinerizar
Virtualização
Virtualização
● 1960 - cpu time sharing (inspiração)
Virtualização
● 1960 - cpu time sharing (inspiração)
● IBM 370 - Projetado para virtualização. Via
softare com o CP/CMS.
Virtualização
● 1960 - cpu time sharing (inspiração)
● IBM 370 - Projetado para virtualização. Via
softare com o CP/CMS.
● IBM z/VM - Case de sucesso com
virtualização por hardware.
Virtualização
● 1960 - cpu time sharing (inspiração)
● IBM 370 - Projetado para virtualização. Via
softare com o CP/CMS.
● IBM z/VM - Case de sucesso com
virtualização por hardware.
● Decada de 90 em diante: VMWare, Xen,
KVM, VirtualBox, etc...
Virtualização
Virtualização
Vantagem:
● Mesma VM nos ambientes dev, homolog e
prod
Virtualização
Vantagem:
● Mesma VM nos ambientes dev, homolog e
prod
● Padronização de ambientes.
Virtualização
Desvantagens:
● Montagem e inicialização lentos
Virtualização
Desvantagens:
● Montagem e inicialização lentos
● Gasta muitos recursos de hardware.
Virtualização
Next Step
● Técnicas de imagem e snapshots
Virtualização
Next Step
● Técnicas de imagem e snapshots
● Automação de montagens (Vagrant, Chef,
Puppet, Ansible)
Sistemas complexos
Sistemas complexos
● Difícil reproduzir todos os componentes em
dev. (5, 6, 7 até 10 VMs)
Sistemas complexos
● Difícil reproduzir todos os componentes em
dev. (5, 6, 7 até 10 VMs)
● Problemas de detalhes de comunicação
entre serviços
Sistemas complexos
● Difícil reproduzir todos os componentes em
dev. (5, 6, 7 até 10 VMs)
● Problemas de detalhes de comunicação
entre serviços
● Difícil testar escalabilidade da aplicação
Conteinerização
Conteinerização
LXC - Linux Containers:
● Jul / 2008 - Kernel 2.6.26 +
LXC - Linux Containers:
● Jul / 2008 - Kernel 2.6.26 +
● lxc-start
Conteinerização
LXC - Linux Containers:
● Jul / 2008 - Kernel 2.6.26 +
● lxc-start
● compartilha kernel e libs com o host
Conteinerização
LXC - Linux Containers:
● Jul / 2008 - Kernel 2.6.26 +
● lxc-start
● compartilha kernel e libs com o host
● isola processo nos Control Groups
(CGroups)
Conteinerização
LXC - Linux Containers:
● Jul / 2008 - Kernel 2.6.26 +
● lxc-start
● compartilha kernel e libs com o host
● isola processo nos Control Groups
(CGroups)
● difícil gerenciar
Conteinerização
Conteinerização
Docker
● Copy on Write
Conteinerização
Docker
● Copy on Write
● Compartilhamento de imagens (Docker Hub)
Conteinerização
Docker
● Copy on Write
● Compartilhamento de imagens (Docker Hub)
● Receita para criação de container
(Dockerfile)
Conteinerização
Docker
● Copy on Write
● Compartilhamento de imagens (Docker Hub)
● Receita para criação de container
(Dockerfile)
● Camada de Api REST
Conteinerização
Docker
● Copy on Write
● Compartilhamento de imagens (Docker Hub)
● Receita para criação de container
(Dockerfile)
● Camada de Api REST
● Inovando (machine, compose, swarm, etc)
Conteinerização
Conteinerização
Vantagens
● sobe muito rápido
Conteinerização
Vantagens
● sobe muito rápido
● otimiza recursos
Conteinerização
Vantagens
● sobe muito rápido
● otimiza recursos
● fácil replicação
Conteinerização
Vantagens
● sobe muito rápido
● otimiza recursos
● fácil replicação
● inovações crescentes (opencontainers.org)
Conteinerização
Desvantagens
● Overhead de IO
Conteinerização
Desvantagens
● Overhead de IO
● Não tão isolado
Conteinerização
Desvantagens
● Overhead de IO
● Não tão isolado
● Só host Linux e conteiners Linux
Conteinerização
Next Steps
● suporte ativo a freebsd
Conteinerização
Next Steps
● suporte ativo a freebsd
● mac osx e windows precisam de uma VM
linux que serve de host para os conteiners
Conteinerização
Next Steps
● suporte ativo a freebsd
● mac osx e windows precisam de uma VM
linux que serve de host para os conteiners
● problema com lentidão de leitura e
permissão de arquivos (vbox-share)
Conteinerização
Next Steps
● suporte nativo a freebsd
● mac osx e windows precisam de uma VM
linux que sirva de host para os conteiners
● problema com lentidão de leitura e
permissão de arquivos (vbox-share)
● boot2docker limitado (vbox-share e nfs)
Conteinerização
Vagrant
● suporte a docker desde 1.4.0 (dez, 2013)
Vagrant
● suporte a docker desde 1.4.0 (dez, 2013)
● suporte a rsync desde 1.5.0 (mar, 2014)
Vagrant
● suporte a docker desde 1.4.0 (dez, 2013)
● suporte a rsync desde 1.5.0 (mar, 2014)
● ajuda no problema com lentidão de leitura e
permissão de arquivos (vbox-share)
Vagrant
● suporte a docker desde 1.4.0 (dez, 2013)
● suporte a rsync desde 1.5.0 (mar, 2014)
● ajuda no problema com lentidão de leitura e
permissão de arquivos (vbox-share)
● opções de compartilhamento (vbox-share,
rsync, nfs, sbmfs)
Vagrant
● suporte a docker desde 1.4.0 (dez, 2013)
● suporte a rsync desde 1.5.0 (mar, 2014)
● ajuda no problema com lentidão de leitura e
permissão de arquivos (vbox-share)
● opções de compartilhamento (vbox-share,
rsync, nfs, sbmfs)
● Permite outras VMs (CoresOS, Ubuntu, etc)
Vagrant
Demo
A hora da tela azul...
Demo
Perguntas
http://bit.ly/talk-vagrant-docker https://joind.in/14828

Mais conteúdo relacionado

PDF
Vagrant & Docker: carregue seus ambientes no bolso
PDF
Docker na vida real
PDF
Talk no Meetup LaravelSP #3
PDF
Primeiros passos com o Docker
PDF
Iniciando com docker
PDF
Desenvolvendo e implantando aplicações PHP utilizando Docker
PDF
Um milhao de usuários simultâneos
PDF
Docker volumes
Vagrant & Docker: carregue seus ambientes no bolso
Docker na vida real
Talk no Meetup LaravelSP #3
Primeiros passos com o Docker
Iniciando com docker
Desenvolvendo e implantando aplicações PHP utilizando Docker
Um milhao de usuários simultâneos
Docker volumes

Mais procurados (20)

PDF
Docker, facilitando a vida do desenvolvimento
PDF
Container revolucao
PPTX
Introdução ao docker
PDF
Introdução à plataforma Docker
PPTX
Introdução a Containers Docker
PDF
Docker: uma visão geral
PDF
Apresentação docker
ODP
Docker: uma visão geral e exemplos de uso
PDF
Bem vindo ao Docker
ODP
O que é Docker?
PDF
Verdades que não querem te contar sobre Docker
PDF
5. rodando containers docker na aws
PDF
Apresentacao docker
PDF
Orquestrando Docker Containers: Machine, Swarm e Compose
PDF
O poder do Docker (7 Masters)
PPTX
Docker para maiores
PDF
TDC 2015 POA - O Fantástico Mundo de Docker
PDF
O que é docker?
PDF
Deploying Docker Containers
PDF
Testadores 2015 - O Fantástico Mundo de Docker
Docker, facilitando a vida do desenvolvimento
Container revolucao
Introdução ao docker
Introdução à plataforma Docker
Introdução a Containers Docker
Docker: uma visão geral
Apresentação docker
Docker: uma visão geral e exemplos de uso
Bem vindo ao Docker
O que é Docker?
Verdades que não querem te contar sobre Docker
5. rodando containers docker na aws
Apresentacao docker
Orquestrando Docker Containers: Machine, Swarm e Compose
O poder do Docker (7 Masters)
Docker para maiores
TDC 2015 POA - O Fantástico Mundo de Docker
O que é docker?
Deploying Docker Containers
Testadores 2015 - O Fantástico Mundo de Docker
Anúncio

Destaque (13)

PPTX
Vagrant Up in 5 Easy Steps
PPTX
Vagrant step-by-step guide for Beginners
PDF
Provisioning & DevOps at Amis25
PDF
Vagrant - ambiente de desenvolvimento virtualizado
PDF
Service Delivery Assembly Line with Vagrant, Packer, and Ansible
PDF
Mitchell Hashimoto, HashiCorp
PDF
Introduction to Vagrant
PDF
Testing applications with traffic control in containers / Alban Crequy (Kinvolk)
PDF
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
PPTX
Orchestrating Docker with Terraform and Consul by Mitchell Hashimoto
PDF
Hype vs. Reality: The AI Explainer
PDF
3 Things Every Sales Team Needs to Be Thinking About in 2017
PDF
Build Features, Not Apps
Vagrant Up in 5 Easy Steps
Vagrant step-by-step guide for Beginners
Provisioning & DevOps at Amis25
Vagrant - ambiente de desenvolvimento virtualizado
Service Delivery Assembly Line with Vagrant, Packer, and Ansible
Mitchell Hashimoto, HashiCorp
Introduction to Vagrant
Testing applications with traffic control in containers / Alban Crequy (Kinvolk)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
Orchestrating Docker with Terraform and Consul by Mitchell Hashimoto
Hype vs. Reality: The AI Explainer
3 Things Every Sales Team Needs to Be Thinking About in 2017
Build Features, Not Apps
Anúncio

Semelhante a Vagrant vs docker? Melhor vagrant + docker (20)

PPTX
Instalação do virtualBox e Linux CentOS 7
PPTX
Orchestrando na linha
PPTX
Conheça o Docker
PPTX
Containers com docker #CPRecife4
PDF
Docker 101 e Ambientes Imutáveis
PPTX
ASP.NET vNext no .NET Architects Days 2014
PDF
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
PDF
12 factor app. Melhor com Docker
PPTX
Evitando a fadiga com Laravel Homestead
PDF
Construção e provisionamento de ambientes de desenvolvimento virtualizados
PDF
Transportando as aplicações entre vários ambientes com Docker
PDF
Introdução ao Docker - Linux Dev Br 2018
PDF
Introdução ao docker
PDF
Vagrant sti
PDF
VMFIT - Virtual Machine-based Fault and Intrusion Tolerance
PPTX
Usando Hyper-v 2012 para virtualização do SQL Server
PDF
Mercurianos - .Net na Prática - Da instalação até o debug da nossa API em um ...
PDF
Workshop Docker
PDF
Docker.io:
PDF
Uma breve introdução ao Terraform
Instalação do virtualBox e Linux CentOS 7
Orchestrando na linha
Conheça o Docker
Containers com docker #CPRecife4
Docker 101 e Ambientes Imutáveis
ASP.NET vNext no .NET Architects Days 2014
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
12 factor app. Melhor com Docker
Evitando a fadiga com Laravel Homestead
Construção e provisionamento de ambientes de desenvolvimento virtualizados
Transportando as aplicações entre vários ambientes com Docker
Introdução ao Docker - Linux Dev Br 2018
Introdução ao docker
Vagrant sti
VMFIT - Virtual Machine-based Fault and Intrusion Tolerance
Usando Hyper-v 2012 para virtualização do SQL Server
Mercurianos - .Net na Prática - Da instalação até o debug da nossa API em um ...
Workshop Docker
Docker.io:
Uma breve introdução ao Terraform

Mais de Wellington Silva (14)

PDF
Docker do básico a orquestração (PHPeste2016)
PDF
Aplicação Distribuída com Docker Swarm (Meetup GruPy-SP)
PDF
Afinal, o que é Docker? (Meetup Laravel #12)
PDF
Afinal, o que é Docker? (Webinar Umbler)
PDF
O que é o Docker afinal? (Workshop Novatec)
PDF
Começando com o Docker (HackerHouseBR)
PDF
Do monolito aos microserviços com Docker (PHPSP+IMA)
PDF
O poder do Docker (7º meetup de Docker SP)
PDF
Aplicações 12 fatores, melhor com Docker
PDF
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
PDF
Docker from basics to orchestration (PHPConfBr2015)
PDF
Talk on PHP Day Uruguay about Docker
PDF
Gnu/Linux - Workshop EACH-USP
PDF
Light Talk Docker Compose
Docker do básico a orquestração (PHPeste2016)
Aplicação Distribuída com Docker Swarm (Meetup GruPy-SP)
Afinal, o que é Docker? (Meetup Laravel #12)
Afinal, o que é Docker? (Webinar Umbler)
O que é o Docker afinal? (Workshop Novatec)
Começando com o Docker (HackerHouseBR)
Do monolito aos microserviços com Docker (PHPSP+IMA)
O poder do Docker (7º meetup de Docker SP)
Aplicações 12 fatores, melhor com Docker
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
Docker from basics to orchestration (PHPConfBr2015)
Talk on PHP Day Uruguay about Docker
Gnu/Linux - Workshop EACH-USP
Light Talk Docker Compose

Último (20)

PDF
Jira Software projetos completos com scrum
PPT
Apresentacao Do Trabalho de Inteligencia
PPTX
Do código à carreira: O Profissional de TI que o mercado realmente quer - com...
PDF
Capacitação em Logística – Instituto Federal
PDF
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
PDF
Processamento da remessa no SAP ERP, SCM610 Col15
PPTX
Analise Estatica de Compiladores para criar uma nova LP
PDF
resumo de instalação de placa arduino em jardim vertical para fertirrigação
PPTX
ccursoammaiacursoammaiacursoammaia123456
PDF
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
PPT
Conceitos básicos de Redes Neurais Artificiais
PDF
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
PDF
ASCENSÃO E QUEDA DO SOFTWARE LIVRE NO ESTADO BRASILEIRO
PDF
Banco de Dados 2atualização de Banco de d
PPTX
Aula 7 - Listas em Python (Introdução à Ciencia da Computação)
PPTX
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
PDF
SEMINÁRIO DE IHC - A interface Homem-Máquina
PPTX
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
PDF
Processos no SAP Extended Warehouse Management, EWM100 Col26
PDF
Metodologia Scrumban-XP - Um Guia Rápido (MrSomebody19).pdf
Jira Software projetos completos com scrum
Apresentacao Do Trabalho de Inteligencia
Do código à carreira: O Profissional de TI que o mercado realmente quer - com...
Capacitação em Logística – Instituto Federal
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
Processamento da remessa no SAP ERP, SCM610 Col15
Analise Estatica de Compiladores para criar uma nova LP
resumo de instalação de placa arduino em jardim vertical para fertirrigação
ccursoammaiacursoammaiacursoammaia123456
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
Conceitos básicos de Redes Neurais Artificiais
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
ASCENSÃO E QUEDA DO SOFTWARE LIVRE NO ESTADO BRASILEIRO
Banco de Dados 2atualização de Banco de d
Aula 7 - Listas em Python (Introdução à Ciencia da Computação)
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
SEMINÁRIO DE IHC - A interface Homem-Máquina
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
Processos no SAP Extended Warehouse Management, EWM100 Col26
Metodologia Scrumban-XP - Um Guia Rápido (MrSomebody19).pdf

Vagrant vs docker? Melhor vagrant + docker