rodrigo braga

tactical code




04 August 2014

Olá Docker

30 minutos antes de tudo

virtualização


Algum tempo atrás fui apresentado ao Vagrant, e é difícil imaginar a vida sem ele agora; virtualizar e replicar ambientes (especialmente de desenvolvimento) tornou-se trivial, o que acabou fazendo do Vagrantfile um dos grandes heróis contemporâneos.

Mas virtualização ainda custa caro (hardware), e muitas máquinas em pé não costuma ser uma boa ideia.

Existem alguns outros poucos pontos negativos, como uma VM por aplicação ou até mesmo a necessidade de subir o sistema operacional inteiro para fazer qualquer coisa, mas são apenas pormenores; o Vagrant seguirá sendo fundamental e brilhante por bastante tempo ainda (acho).

o vagrant é suficiente?

Mais ou menos; existe uma pequena diferença entre virtualizar e conteinerizar (se é que essa palavra existe) e é justamente ela que faz essa combinação Vagrant + Docker perfeita. Ao menos para o meu dia-a-dia.

“conteinerização”


O Docker é um aplicativo que possibilita criarmos containers (com ajuda do LXC) para um sistema operacional inteiro.

An open platform for distributed applications for developers and sysadmins.

Um container é essencialmente o SO, e suas particularidades de forma isolada; enquanto no host é apenas mais um processo.

Naturalmente um container consome poucos recursos, o tempo de inicialização é curtíssimo e é possível assim como no Vagrant, replicar o container de forma simples através das imagens ou do Dockerfile (um novo herói sem sombra de dúvidas).

devops


Usar o Docker para desenvolvimento é espetacular [1], mas essa facilidade em provisionar containers mostrou-se um grande aliado quando falamos em colocar aplicativos em produção, como o slogan do Docker deixa claro.

Build, Ship, and Run Any App, Anywhere

ISPM


Após contabilizarmos os prós, contras e os mais ou menos do Docker, pudemos falar um pouco mais sobre o assunto na ISPM, olharmos de perto como o Docker pode nos ajudar.

[1] OK, tem alguns problemas também.


comments powered by disqus