6.4. 在标准 UBI 容器中添加软件
要在标准 UBI 容器中添加软件,请禁用非 UBI dnf 存储库,以确保您构建的容器可以被重新分发。
先决条件
-
container-tools
元数据包已安装。
流程
拉取并运行
registry.access.redhat.com/ubi10/ubi
镜像:podman run -it --name myubi registry.access.redhat.com/ubi10/ubi
$ podman run -it --name myubi registry.access.redhat.com/ubi10/ubi
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将软件包添加到
myubi
容器。要添加在 UBI 存储库中的软件包,请禁用除 UBI 软件仓库以外的所有 dnf 软件仓库。例如,要添加
bzip2
软件包:dnf install --disablerepo=* --enablerepo=ubi-8-appstream-rpms --enablerepo=ubi-8-baseos-rpms bzip2
# dnf install --disablerepo=* --enablerepo=ubi-8-appstream-rpms --enablerepo=ubi-8-baseos-rpms bzip2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要添加不在 UBI 存储库中的软件包,请不要禁用任何存储库。例如,要添加
zsh
软件包:dnf install zsh
# dnf install zsh
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要添加位于不同主机存储库中的软件包,请明确启用您需要的存储库。例如,要安装
codeready-builder-for-rhel-8-x86_64-rpms
存储库中的python38-devel
软件包:dnf install --enablerepo=codeready-builder-for-rhel-8-x86_64-rpms python38-devel
# dnf install --enablerepo=codeready-builder-for-rhel-8-x86_64-rpms python38-devel
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出容器内所有启用的存储库:
dnf repolist
# dnf repolist
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 确保列出了所需的存储库。
列出所有安装的软件包:
rpm -qa
# rpm -qa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 确保列出了所需的软件包。
注意
安装不在 Red Hat UBI 存储库中的红帽软件包可以限制在订阅的 RHEL 系统外分发容器的能力。