Olá pessoal,
Hoje vamos falar a sobre images, mas a final o que são images no Docker?
Images Docker são compostas por sistemas de arquivos de camadas que ficam uma sobre as outras. Ela é a nossa base para construção de uma aplicação, ela pode ser desde o base do CentOS como também um CentOS com Apache, PHP e MySQL.
Em uma Image temos o que chamamos de base que é um sistema de arquivos de inicialização bootfs
, que é muito parecido com o sistema de boot do Linux / Unix
. Nessa parte é onde temos toda a criação dos cgroups
para fazer todo o controle e limitações de processos, namespace
para blindar o container. O Docker nunca irá interagir com o sistema de arquivos de inicialização, pois quando o recipiente é iniciado ele é movido para a memória e o boot do sistema de arquivos é desmontado para liberar a memória RAM usada pela imagem de disco initrd
. Isso parece muito com a pilha de virtualização típica do Linux. A próxima camada de uma imagem é a raiz na qual trabalha o rootfs
, na parte superior do sistema de arquivos de inicialização, este rootfs
pode ser um ou mais sistemas operacionais (Ex: Ubuntu, CentOS)
.
No momento do boot o sistema de arquivos raiz é montado somente leitura e depois de uma checagem de integridade é alterado para leitura e gravação. Isso no começo pode ser muito confuso, mas com a imagem abaixo vocês devem entender melhor como funciona.
Como podemos ver na imagem, temos a parte dobootfs
que é a parte do Kernel e a também a camada do rootfs
que é a do Debian. Mais acima temos algumas adições de features na imagem que são add emacs
e add apache
. Todas essas camadas abaixo são somente leitura então nada será alterado nessas partes, a camada de escrita é apenas a que está acima dessas outras quatro camadas, é nessa camada que o usuário ou administrador do container irá interagir e poderá criar novas imagens, por exemplo adicionando um serviço php
e dai criará uma nova imagem com mais uma camada somente leitura e assim vamos criando nossas imagens.
Por hoje é isso pessoal, em breve vamos estar mostrando como criar uma imagem, então fique ligado em nossos posts.