7.4. 표준 UBI 컨테이너에 소프트웨어 추가
표준 UBI 컨테이너 내부에 소프트웨어를 추가하려면 비UBI dnf 리포지터리를 비활성화하여 빌드한 컨테이너를 재배포할 수 있는지 확인합니다.
사전 요구 사항
-
container-tools
meta-package가 설치되어 있습니다.
절차
registry.access.redhat.com/ubi9/ubi
이미지를 가져와서 실행합니다.$ podman run -it --name myubi registry.access.redhat.com/ubi9/ubi
패키지를
myubi 컨테이너에
추가합니다.UBI 리포지토리에 있는 패키지를 추가하려면 UBI 리포지터리를 제외한 모든 dnf 리포지토리를 비활성화합니다. 예를 들어
bzip2
패키지를 추가하려면 다음을 수행합니다.# dnf install --disablerepo=* --enablerepo=ubi-8-appstream-rpms --enablerepo=ubi-8-baseos-rpms bzip2
UBI 리포지토리에 없는 패키지를 추가하려면 리포지토리를 비활성화하지 마십시오. 예를 들어
zsh
패키지를 추가하려면 다음을 수행합니다.# dnf install zsh
다른 호스트 리포지토리에 있는 패키지를 추가하려면 필요한 리포지토리를 명시적으로 활성화합니다. 예를 들어
codeready-builder-for
패키지를 설치하려면 다음을 수행합니다.-rhel-8-x86_64-rpms 리포지토리에서 python38-
devel# dnf install --enablerepo=codeready-builder-for-rhel-8-x86_64-rpms python38-devel
검증
컨테이너 내에서 활성화된 모든 리포지토리를 나열합니다.
# dnf repolist
- 필요한 리포지토리가 나열되었는지 확인합니다.
설치된 패키지를 모두 나열합니다.
# rpm -qa
- 필수 패키지가 나열되어 있는지 확인합니다.
Red Hat UBI 리포지토리에 포함되지 않은 Red Hat 패키지를 설치하면 서브스크립션된 RHEL 시스템 외부에서 컨테이너를 배포할 수 있는 기능이 제한될 수 있습니다.