翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Image Builder を使用したカスタムコンポーネントの作成
コンポーネントドキュメントが完成したら、それを使用して、Image Builder レシピで使用できるカスタムコンポーネントを作成できます。カスタムコンポーネントは、Image Builder コンソール、API か SDK、またはコマンドラインから作成できます。入力パラメータを持つカスタムコンポーネントを作成してレシピで使用する方法の詳細については、「チュートリアル: 入力パラメータを持つカスタムコンポーネントを作成する」を参照してください。
以下のセクションでは、コンソールまたは AWS CLIからコンポーネントを作成する方法を示します。
コンソールでのカスタムモデルコンポーネントの作成
Image Builder コンソールから AWSTOE アプリケーションコンポーネントを作成するには、次の手順に従います。
-
https://console.aws.amazon.com/imagebuilder/
で、EC2 Image Builder コンソールを開きます。 -
ナビゲーションペインから コンポーネント を選択します。次に コンポーネントを作成 を選択します。
-
「コンポーネントの作成」ページの「コンポーネントの詳細」で、次のように入力します。
-
イメージオペレーティングシステム (OS)。コンポーネントと互換性のあるオペレーティングシステムを指定します。
-
コンポーネントカテゴリ。ドロップダウンから、作成するビルドコンポーネントまたはテストコンポーネントのタイプを選択します。
-
コンポーネント名。コンポーネントの名前を入力します。
-
コンポーネントのバージョン。コンポーネントのバージョン番号を入力します。
-
説明。ジョブの説明を追加して、ジョブを識別することも可能です。
-
説明の変更。このバージョンのコンポーネントに加えられた変更点を理解しやすいように、オプションで説明を入力します。
-
-
「定義文書」セクションのデフォルトオプションは「文書コンテンツの定義」です。コンポーネントドキュメントは、イメージを作成するために Image Builder がビルドインスタンスとテストインスタンスで実行するアクションを定義します。
「コンテンツ」ボックスに、YAML コンポーネントドキュメントの内容を入力します。Linux 用の Hello World サンプルから始めるには、「サンプルを使用する」オプションを選択します。YAML コンポーネントドキュメントの作成方法や、そのページから UpdateOS サンプルをコピーして貼り付ける方法について詳しくは、Image Builder でのカスタムコンポーネント用 YAML コンポーネントドキュメントの作成を参照してください。
-
コンポーネントの詳細を入力したら、「コンポーネントを作成」を選択します。
注記
レシピを作成または更新するときに新しいコンポーネントを表示するには、ビルドまたはテスト用のコンポーネントリストに Owned by me フィルタを適用します。フィルタは、コンポーネントリストの上部にある、検索ボックスの横にあります。
-
コンポーネントを削除するには、コンポーネント ページで、削除するコンポーネントの横にあるチェックボックスをオンにします。 Actions (アクション)ドロップダウンから Deploy API ( デプロイAPI )を選択します。
コンポーネントの更新
新しいコンポーネントバージョンを作成するには、次の手順に従います。
-
どこから始めるかによって:
-
コンポーネントリストページから — コンポーネント名の横にあるチェックボックスを選択し、「アクション」メニューから「新規バージョンを作成」を選択します。
-
コンポーネントの詳細ページから — 見出しの右上隅にある 新規バージョンを作成 ボタンをクリックします。
-
-
「Create Component」ページが表示されると、コンポーネント情報には現在の値が既に入力されています。「コンポーネントを作成」の手順に従って、コンポーネントを更新します。これにより、コンポーネントバージョンには固有のセマンティックバージョンを確実に入力できます。Image Builder リソースのセマンティックバージョニングの詳細については、Image Builder でのセマンティックバージョニングを参照してください。
からカスタムコンポーネントを作成する AWS CLI
このセクションでは、次のように、 で Image Builder コマンドをセットアップして使用し、 AWSTOE アプリケーションコンポーネント AWS CLI を作成する方法について説明します。
-
YAML コンポーネントドキュメントを S3 バケットにアップロードし、コマンドラインから参照できるようにします。
-
create-component コマンドを使用して AWSTOE アプリケーションコンポーネントを作成します。
-
list-componentsコマンドと名前フィルタを使用してコンポーネントのバージョンを一覧表示し、既に存在するバージョンを確認します。この出力を使用して、更新に必要な次のバージョンを決定できます。
入力 YAML ドキュメントから AWSTOE アプリケーションコンポーネントを作成するには、イメージオペレーティングシステムプラットフォームに一致するステップに従います。
AWSTOE からの更新のコンポーネントバージョニング AWS CLI
AWSTOE コンポーネント名とバージョンは、コンポーネントのプレフィックスの後にコンポーネントの Amazon リソースネーム (ARN) に埋め込まれます。コンポーネントの新しいバージョンにはそれぞれ固有の ARN があります。新しいバージョンを作成する手順は、そのコンポーネント名に対してセマンティックバージョンが一意である限り、新しいコンポーネントを作成する手順と完全に同じです。Image Builder リソースのセマンティックバージョニングの詳細については、Image Builder でのセマンティックバージョニングを参照してください。
次の論理的なバージョンを割り当てるために、まず変更したいコンポーネントの既存のバージョンのリストを取得してください。で list-components コマンドを使用し AWS CLI、名前をフィルタリングします。
この例では、以前の Linux の例で作成したコンポーネントの名前をフィルタします。作成したコンポーネントをリストアップするには、create-componentコマンドで使用した JSON ファイルのname
パラメータの値を使用する。
aws imagebuilder list-components --filters name="name",values="
update-linux-os
"{ "requestId": "123a4567-b890-123c-45d6-ef789ab0cd1e", "componentVersionList": [ { "arn": "arn:aws:imagebuilder:us-west-2:1234560087789012:component/update-linux-os/1.0.0", "name": "update-linux-os", "version": "1.0.0", "platform": "Linux", "type": "BUILD", "owner": "123456789012", "dateCreated": "2020-09-24T16:58:24.444Z" }, { "arn": "arn:aws:imagebuilder:us-west-2:1234560087789012:component/update-linux-os/1.0.1", "name": "update-linux-os", "version": "1.0.1", "platform": "Linux", "type": "BUILD", "owner": "123456789012", "dateCreated": "2021-07-10T03:38:46.091Z" } ] }
結果に基づいて、次のバージョンを決定できます。
スクリプトをインポートして からコンポーネントを作成する AWS CLI
シナリオによっては、既存のスクリプトから始める方が簡単な場合もあります。このシナリオでは、以下の例を使うことができます。
この例では、
(図のように) というファイルがあることを前提としています。このファイルは、既に import-component.json
にアップロードされている amzn-s3-demo-source-bucket
AdminConfig.ps1
というPowerShell スクリプトを直接に参照していることを注意してください。現在、コンポーネントSHELL
がサポートされているformat
。
{ "name": "
MyImportedComponent
", "semanticVersion": "1.0.0", "description": "An example of how to import a component
", "changeDescription": "First commit message.
", "format": "SHELL", "platform": "Windows", "type": "BUILD", "uri": "s3://amzn-s3-demo-source-bucket
/AdminConfig.ps1
", "kmsKeyId": "arn:aws:kms:us-west-:key/
2:123456789012
60763706-b131-418b-8f85-3420912f020c
" }
インポートされたスクリプトからコンポーネントを作成するには、次のコマンドを実行します。
aws imagebuilder import-component --cli-input-json file://
import-component.json