Faz o deploy da aplicação contendo
todas dependências necessárias para
a execução da aplicação
Separa as aplicações
em containers
Utiliza o Sistema
Operacional do
hospedeiro
Variáveis
de
sistema
Cada container tem uma
parte dos recursos da
máquina
cgroups e namespaces,
para que o container só
enxergue o que cabe a ele
na máquina do hospedeiro
Separação de
Interface de Rede
Diferença de Virtual Machine?
- A VM exige que instale um SO, com o docker
basta usar do hospedeiro;
- Container é uma solução mais leve;
- Cada máquina virtual tem seu próprio SO
(no mesmo computador pode haver três
máquinas com três diferentes SO's);
- Docker podem haver vários containers,
mas eles têm o mesmo SO da máquina
hospedeira.
Termos
DockerFile: Arquivos dentro da aplicação que
são como projetos da arquitetura dessa
aplicação para que ela funcione corretamente;
contém todas as informações necessárias para
gerar essa Image do docker
Images contém todas as coisas necessárias para rodar a
aplicação (como se fosse uma imagem do ambiente necessário
para executar tal aplicação)
Container é uma instância de uma Imagem, é
aquele ambiente executando (podem haver várias
instâncias de uma mesma image em execução)
Registros (HUBs) são os lugares onde as images são
armazenadas e até possam ser reutilizadas depois
por outras pessoas ou o próprio dev