Red Hat Training

A Red Hat training course is available for RHEL 8

Capítulo 4. Adicionando software a um recipiente UBI em funcionamento

As imagens UBI são construídas a partir do conteúdo da Red Hat. Estas imagens UBI também fornecem um subconjunto de pacotes Red Hat Enterprise Linux que estão livremente disponíveis para instalação para uso com UBI. Para adicionar ou atualizar software, as imagens UBI são pré-configuradas para apontar para os repositórios yum disponíveis gratuitamente que possuem RPMs oficiais da Red Hat.

Para adicionar pacotes do UBI repos a contêineres UBI em funcionamento:

  • Em ubi imagens, o comando yum é instalado para permitir que você desenhe pacotes.
  • Em ubi-minimal imagens, o comando microdnf (com um conjunto de recursos menor) está incluído em vez de yum.

Tenha em mente que instalar e trabalhar com pacotes de software diretamente em containers em execução é apenas para adicionar pacotes temporariamente ou aprender sobre os repositórios. Consulte a seção "Construir uma imagem baseada em UBI" para formas mais permanentes de construir imagens baseadas em UBI.

Aqui estão algumas questões a serem consideradas ao trabalhar com imagens do UBI:

  • Centenas de pacotes de RPM usados nos fluxos de aplicações existentes são armazenados nos repositórios de yum, empacotados com as novas imagens UBI. Esteja à vontade para instalar esses RPMs em suas imagens UBI para emular o tempo de execução (python, php, nodejs, etc.) que lhe interessa.
  • Como alguns arquivos de idiomas e documentação foram retirados da imagem mínima da UBI (ubi8/ubi-minimal), rodando rpm -Va dentro daquele contêiner mostrará o conteúdo de muitos pacotes como estando faltando ou modificado. Se tiver uma lista completa de arquivos dentro daquele contêiner é importante para você, considere o uso de uma ferramenta como Tripwire para registrar os arquivos no contêiner e verificá-lo mais tarde.
  • Após a criação de uma imagem em camadas, use podman history para verificar em qual imagem UBI ela foi construída. Por exemplo, depois de completar o exemplo do servidor web mostrado anteriormente, digite podman history johndoe/webserver para ver que a imagem em que foi construída inclui o ID da imagem UBI que você adicionou na linha FROM do Dockerfile.

Quando você adiciona software a um contêiner UBI, os procedimentos diferem para atualizar as imagens UBI em um host RHEL subscrito ou em um sistema não-RHEL (ou não-RHEL) não subscrito. Essas duas formas de trabalhar com imagens UBI são ilustradas abaixo.

4.1. Adicionando software a um contêiner UBI em um host subscrito

Se você estiver rodando um contêiner UBI em um host RHEL registrado e subscrito, o repositório principal do servidor RHEL é habilitado dentro do contêiner padrão UBI, juntamente com todos os repositórios UBI. Portanto, o conjunto completo de pacotes da Red Hat está disponível. A partir do contêiner mínimo UBI, todos os repositórios UBI são habilitados por padrão, mas nenhum repositório é habilitado a partir do host por padrão.