5
respostas

Containers x SO

O curso informa: Por não ter possuir um sistema operacional, o container é muito mais leve e não possui o custo de manter múltiplos sistemas operacionais, já que só teremos um sistema operacional, que será dividido entre os containers.

Dessa forma questiono: - Mas na verdade o container possuí um micro sistema operacional Alpine, certo? - Preciso me preocupar com a manutenção do Alpine ou não?

5 respostas

Olá Marcos

Na realidade o Alpine é utilizado para rodar as ferramentas como o tool box, no caso de estar executando no ambiente Microsoft por exemplo. Agora por padrão o Docker engine utiliza features do Kernel Linux, os name spaces para isolar as camadas entre containers e SO. Containers em produção são normalmente executados sem a necessidade de ambientes gráficos para manutenção e administração. No Linux o Docker roda diretamente compartilhando do mesmo kernel do host.

A minha dúvida ainda é: preciso me preocupar em atualizar pacotes de segurança e outras manutenções no linux do container (o alpine)?

Então ... isso será feito quando você atualizar a ferramenta, imagino que esteja utilizando o DockerToolbox ... Você precisa manter atualizado esta aplicação e seu SO.

Estou ainda procurando entender: - quer dizer que o alpine (distribuição linux) de dentro do container é atualizado de forma indireta quando atualizo o SO do docker host? Não preciso dar um apt-get lá dentro do alpine para atualizar algo?

Você precisa ter bem claro a diferença entre o DockerHost que é onde e como você vai disponibilizar seus containers a imagem de referência na hora de montar sua aplicação que ai sim é onde você define versão / nível de atualização. Dá uma olhada nas primeiras aulas onde fala sobre camada de leitura e escrita por ex. para esclarecer... Nesse momento, no cenário que você está apresentando, você não está interagindo diretamente nesse Alpine, é a aplicação do Docker Engine que no seu caso está rodando sobre alpine que interage com essa distro específica.

Algumas dicas que vão te ajudar muito são esses dois cursos que são pré requisitos para esse curso de Docker, são os treinamentos Linux I: Conhecendo e utilizando o terminal e Redes parte 1: Introdução, Conceitos e Prática. Outra dica interessante é você experimentar executar containers em Cloud, aqui tem uma opção gratuita https://labs.play-with-docker.com/ que permite um período de uso. Sugiro também verificar a parte "Run Docker Anywhere" na página da documentação https://docs.docker.com/, isso ajudará até mesmo para futuramente fazer deploy dos containers elaborados na sua máquina para um ambiente de produção.

Espero ter ajudado, um abraço e bons estudos.