2.7. Containerfile
定義ファイルが作成されると、Ansible Builder はそれを読み込んで検証し、Containerfile とコンテナービルドコンテキストを作成し、必要に応じてこれらを Podman に渡して自動化実行環境イメージをビルドします。コンテナーの構築は、ベース、ギャラクシー、ビルダー、ファイナル といういくつかの明確な段階で行われます。イメージビルド手順 (および additional_build_steps で定義されている対応するカスタム prepend_ および append_ 手順) は以下のとおりです。
-
ベースビルド段階では、指定されたベースイメージが、Python、pip、ansible-core、ansible-runnerなど、他のビルド段階で必要なコンポーネントで (オプションで) カスタマイズされます。次に、生成されたイメージが検証され、必要なコンポーネントが利用可能であることが確認されます (コンポーネントはベースイメージにすでに存在している可能性があるため)。作成されたカスタマイズされたベースイメージの一時的なコピーが、他のすべてのビルド段階のベースとして使用されます。 -
銀河構築段階では、定義ファイルで指定されたコレクションがダウンロードされ、最終構築段階でのインストールのために保存されます。コレクションによって宣言された Python とシステムの依存関係も (存在する場合)、今後の分析のために収集されます。 -
ビルダーのビルド段階では、コレクションによって宣言された Python の依存関係が、定義ファイルにリストされているものとマージされます。この最後の Python 依存関係セットは、Python ホイールとしてダウンロードおよびビルドされ、最終ビルド段階でのインストールのために保存されます。 -
最終ビルド段階では、以前にダウンロードされたコレクションがインストールされるとともに、システムパッケージ、およびコレクションによって依存関係として宣言された、または定義ファイルにリストされている以前にビルドされた Python パッケージもインストールされます。