18.5. コンテナーでの Buildah の実行
この手順では、コンテナーで Buildah を実行し、イメージを基に作業コンテナーを作成する方法を説明します。
前提条件
-
container-toolsモジュールがインストールされている。
手順
registry.redhat.io レジストリーにログインします。
$ podman login registry.redhat.io Username: myuser@mycompany.com Password: <password> Login Succeeded!registry.redhat.io/rhel8/buildahイメージをプルして実行します。# podman run --rm --device /dev/fuse -it \ registry.redhat.io/rhel8/buildah /bin/bash-
--rmオプションは、コンテナーの終了後にregistry.redhat.io/rhel8/buildahイメージを削除します。 -
--deviceオプションは、ホストデバイスをコンテナーに追加します。 -
sys_chroot- 別のルートディレクトリーに変更する機能。コンテナーのデフォルト機能には含まれていません。
-
registry.access.redhat.com/ubi8イメージを使用して、新しいコンテナーを作成します。# buildah from registry.access.redhat.com/ubi8 ... ubi8-working-containerubi8-working-containerコンテナー内でls /コマンドを実行します。# buildah run --isolation=chroot ubi8-working-container ls / bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv必要に応じて、ローカルストレージ内の全イメージをリスト表示します。
# buildah images REPOSITORY TAG IMAGE ID CREATED SIZE registry.access.redhat.com/ubi8 latest ecbc6f53bba0 5 weeks ago 211 MB必要に応じて、作業用コンテナーとそのベースイメージをリスト表示します。
# buildah containers CONTAINER ID BUILDER IMAGE ID IMAGE NAME CONTAINER NAME 0aaba7192762 * ecbc6f53bba0 registry.access.redhat.com/ub... ubi8-working-container必要に応じて、
registry.access.redhat.com/ubi8イメージをregistry.example.comにあるローカルレジストリーにプッシュします。# buildah push ecbc6f53bba0 registry.example.com:5000/ubi8/ubi