Minha compreensão da conteinerização é limitada, então é possível que esta questão esteja equivocada, mas sei com certeza que os contêineres Docker utilizam alguns recursos do kernel de seu sistema host para permanecerem relativamente leves. Até onde sei, isso pode se estender a pacotes distribuídos pelo sistema operacional (por exemplo, binutils).
Supondo que não estou enganado ao pensar que os contêineres docker têm a capacidade de utilizar pacotes fornecidos pelo host, existe uma maneira padrão de enumerar todos os pacotes que o contêiner pretende/espera encontrar em um determinado servidor quando hospedado por ele?
Responder1
Eu sei com certeza que os contêineres Docker utilizam alguns recursos do kernel de seu sistema host para permanecerem relativamente leves.
Sim, os contêineres compartilham o kernel host.
Até onde sei, isso pode se estender a pacotes distribuídos pelo sistema operacional (por exemplo, binutils).
Istopode, mas é extremamente incomum e requer configuração manual fora do contêiner — basicamente, você precisa montar um volume do host, permitindo que o contêiner acesse as partes relevantes de seu(s) sistema(s) de arquivos.
Na grande maioria dos casos, as partes do espaço do usuário dos contêineres são totalmente separadas do host. Não existe uma maneira padrão de enumerar pacotes que o contêiner espera encontrar no host, porque os contêineres normalmente não têm tal expectativa e não há como declarar tais expectativas. Se você encontrar um contêiner desse tipo, a documentação deverá informá-lo sobre ele e se ele possui um descritor de implantação de qualquer tipo (por exemploum gráfico Helm para Kubernetes), incluirá os volumes e pontos de montagem necessários (mas isso não dirá o que é necessário do host).
Os contêineres são realmente independentes do host: eles são executados em qualquer sistema com o tempo de execução do contêiner apropriado, e o host pode usar qualquer sistema de pacotes que desejar, ou até mesmo nenhum. Portanto, os contêineres nem possuem os conceitos necessários para exigir um pacote do host; isso iria contra alguns dos princípios fundamentais por trás dos contêineres.