O que é o Docker e os seus containers?

in #docker7 years ago

Uma outra forma de virtualizar

Para responder a esta pergunta temos de começar por explicar como funcionam os servidores de uma forma geral.

Num servidor sem virtualização temos apenas um Sistema operativo (SO) que gere a RAM, CPU e I/O através do Kernel. Em cima desse SO serão instaladas as aplicações, o acessos dos utilizadores e tudo o que conhecemos. No diagrama em baixo podemos ver, de uma forma simplificada, essa arquitetura.

Com a virtualização (Virtual Machines) foi possível correr mais do que um SO no mesmo hardware. Os SO guest correm em cima do SO host, mas são como um servidor dentro de outro, contendo o seu próprio kernel, bibliotecas e drivers, necessários para o seu funcionamento. Podem ver essa arquitectura na imagem em baixo à esquerda.

Já a arquitectura de containers, neste caso o Docker, só usa um kernel, reduzindo assim a carga necessária para a sua execução, seja em memória, seja em CPU. As aplicações que estão dentro do container, usam apenas um sub-conjunto próprio de bibliotecas e herdam tudo o resto do kernel do sistema operativo do host.

Podemos ver uma comparação entre Virtual Machines e Docker Containers em baixo.

Desta forma podemos ter containers muito pequenos, apenas com o software necessário para a nossa aplicação.

Com esta nova arquitectura, escalar o número de ‘servidores’ onde a vossa aplicação está a correr, é muito mais fácil e sem ‘gastar’ muitos recursos computacionais.

Coin Marketplace

STEEM 0.20
TRX 0.19
JST 0.034
BTC 91309.99
ETH 3150.55
USDT 1.00
SBD 2.89