第19章 Buildah でコンテナーイメージの構築


Buildah は、OCI Runtime Specification を満たす OCI コンテナーイメージの構築を容易にします。Buildah を使用すると、作業コンテナーをゼロから作成することも、イメージを開始点として使用して作成することも可能です。イメージは、Containerfile 内の指示を使用して作業コンテナーから作成するか、Containerfile 内のコマンドをエミュレートする一連の Buildah コマンドを使用して作成できます。

19.1. Buildah ツール

Buildah は、Open Container Initiative (OCI) コンテナーイメージと、そのイメージから作業コンテナーを作成するためのコマンドラインツールです。Buildah を使用すると、さまざまな方法でコンテナーとコンテナーイメージを作成できます。

コンテナーイメージをゼロから作成する
buildah from scratch コマンドを使用すると、最小限のコンテナーイメージをゼロから作成できます。最小限のコンテナーイメージには、不要なファイルや依存関係の追加を避け、セキュリティーを強化し、パフォーマンスを最適化するという利点があります。詳細は、Buildah を使用したゼロからのイメージの作成 を参照してください。
コンテナーイメージからのコンテナー
buildah from <image> コマンドを使用すると、コンテナーイメージから作業コンテナーを作成できます。その後、buildah mount コマンドと buildah copy コマンドを使用して、コンテナーを変更できます。詳細は、Buildah を使用したコンテナーの操作 を参照してください。
既存のコンテナーからのコンテナーイメージ
bulidah commit コマンドを使用すると、新しいコンテナーイメージを作成できます。必要に応じて、buildah push コマンドを使用して、新しく作成したコンテナーイメージをコンテナーレジストリーにプッシュできます。詳細は、Buildah を使用したコンテナーの操作 を参照してください。
Containerfile の指示からのコンテナーイメージ
buildah build または buildah bud コマンドを使用すると、Containerfile 内の指示からコンテナーイメージをビルドできます。詳細は、Buildah を使用した Containerfile からのイメージのビルド を参照してください。

Buildah の使用は、docker コマンドを使用したイメージのビルドと次の点で異なります。

デーモンなし
Buildah にはコンテナーランタイムデーモンは必要ありません。
ベースイメージまたはゼロからのビルド
別のコンテナーをベースにイメージをビルドすることも、空のイメージを使用してゼロからビルドすることもできます。
イメージサイズの縮小
Buildah イメージには、gccmakednf などのビルドツールが含まれていません。そのため、イメージのセキュリティーが強化され、イメージの転送が容易になります。
互換性
Buildah は Containerfile を使用したコンテナーイメージのビルドをサポートしているため、Docker から Buildah に簡単に移行できます。Containerfile 内でも、Dockerfile 内と同じコマンドを使用できます。
対話形式のイメージビルド
コンテナーに対する変更を作成してコミットし、対話形式で段階的にイメージをビルドできます。
シンプルなイメージ作成
Buildah を使用すると、rootfs を作成したり、JSON ファイルを生成したり、OCI 準拠のイメージをビルドしたりできます。
柔軟性
Bash で直接コンテナービルドをスクリプト化できます。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.