Red Hat Training

A Red Hat training course is available for RHEL 8

7.4. 標準の UBI コンテナーへのソフトウェアの追加

標準の UBI コンテナー内にソフトウェアを追加するには、UBI 以外の yum リポジトリーを無効にして、ビルドするコンテナーが再配布されるようにします。

前提条件

  • container-tools モジュールがインストールされている。

手順

  1. registry.access.redhat.com/ubi8/ubi イメージをプルして実行します。

    $ podman run -it --name myubi registry.access.redhat.com/ubi8/ubi
  2. myubi コンテナーにパッケージを追加します。

    • UBI リポジトリーにあるパッケージを追加するには、UBI リポジトリー以外の yum リポジトリーをすべて無効にします。たとえば、bzip2 パッケージを追加するには、次のコマンドを実行します。

      # yum install --disablerepo=* --enablerepo=ubi-8-appstream-rpms --enablerepo=ubi-8-baseos-rpms bzip2
    • UBI リポジトリーにないパッケージを追加するには、リポジトリーを無効にしないでください。たとえば、zsh パッケージを追加するには、次のコマンドを実行します。

      # yum install zsh
    • 別のホストリポジトリーにあるパッケージを追加するには、必要なリポジトリーを明示的に有効にします。たとえば、codeready-builder-for-rhel-8-x86_64-rpms リポジトリーから python38-devel パッケージをインストールするには、以下のコマンドを実行します。

      # yum install --enablerepo=codeready-builder-for-rhel-8-x86_64-rpms python38-devel

検証手順

  1. コンテナー内で有効なリポジトリーのリストを表示します。

    # yum repolist
  2. 必要なリポジトリーがリスト表示されていることを確認します。
  3. インストール済みパッケージのリストを表示します。

    # rpm -qa
  4. 必要なパッケージがリスト表示されていることを確認します。
注記

Red Hat UBI リポジトリーに含まれていない Red Hat パッケージをインストールすると、サブスクライブしている RHEL システム以外でコンテナーを配布する機能が限定される可能性があります。