Red Hat Training

A Red Hat training course is available for RHEL 8

20.4. buildah copy および buildah config を使用したコンテナーの変更

buildah copy コマンドを使用して、マウントせずにファイルをコンテナーにコピーします。次に、buildah config コマンドを使用して、デフォルトで作成したスクリプトを実行するコンテナーを設定できます。

前提条件

手順

  1. newecho という名前のスクリプトを作成し、実行可能にします。

    # cat newecho
    echo "I changed this container"
    # chmod 755 newecho
  2. 新しい作業コンテナーを作成します。

    # buildah from myecho:latest
    myecho-working-container-2
  3. newecho スクリプトを、コンテナー内の /usr/local/bin ディレクトリーにコピーします。

    # buildah copy myecho-working-container-2 newecho /usr/local/bin
  4. newecho スクリプトを、新しいエントリーポイントとして使用するように設定を変更します。

    # buildah config --entrypoint "/bin/sh -c /usr/local/bin/newecho" myecho-working-container-2
  5. オプション: 実行する newecho スクリプトのトリガーとなる myecho-working-container-2 コンテナーを実行します。

    # buildah run myecho-working-container-2 -- sh -c '/usr/local/bin/newecho'
    I changed this container
  6. myecho-working-container-2 コンテナーを、mynewecho という新しいイメージにコミットします。

    # buildah commit myecho-working-container-2 containers-storage:mynewecho

検証

  • ローカルストレージ内のイメージをリスト表示します。

    # buildah images
    REPOSITORY                                  TAG      IMAGE ID       CREATED         SIZE
    docker.io/library/mynewecho                 latest   fa2091a7d8b6   8 seconds ago   234 MB

関連情報

  • buildah-copy の man ページ
  • buildah-config の man ページ
  • buildah-commit の man ページ
  • buildah-run の man ページ