Menu Close

Red Hat Training

A Red Hat training course is available for RHEL 8

11.5. UBI ベースのイメージの構築

Buildah ユーティリティーを使用して、Containerfile から UBI ベースの Web サーバーコンテナーを作成できます。非 UBI yum リポジトリーをすべて無効にして、イメージに再配布できる Red Hat ソフトウェアのみが含まれていることを確認する必要があります。


UBI の最小イメージの場合は、yum の代わりに microdnf を使用します。

RUN microdnf update -y && rm -rf /var/cache/yum
RUN microdnf install httpd -y && microdnf clean all


  1. Containerfile を作成します。

    USER root
    LABEL maintainer="John Doe"
    # Update image
    RUN yum update --disablerepo=* --enablerepo=ubi-8-appstream --enablerepo=ubi-8-baseos -y && rm -rf /var/cache/yum
    RUN yum install --disablerepo=* --enablerepo=ubi-8-appstream --enablerepo=ubi-8-baseos httpd -y && rm -rf /var/cache/yum
    # Add default Web page and expose port
    RUN echo "The Web Server is Running" > /var/www/html/index.html
    EXPOSE 80
    # Start the service
    CMD ["-D", "FOREGROUND"]
    ENTRYPOINT ["/usr/sbin/httpd"]
  2. コンテナーイメージをビルドします。

    # buildah bud -t johndoe/webserver .
    STEP 1: FROM
    STEP 2: USER root
    STEP 3: LABEL maintainer="John Doe"
    STEP 4: RUN yum update --disablerepo=* --enablerepo=ubi-8-appstream --enablerepo=ubi-8-baseos -y
    Writing manifest to image destination
    Storing signatures
    --> f9874f27050


  1. Web サーバーを実行します。

    # podman run -d --name=myweb -p 80:80 johndoe/webserver
  2. Web サーバーをテストします。

    # curl http://localhost/index.html
    The Web Server is Running