これは AWS CDK v2 デベロッパーガイドです。古い CDK v1 は 2022 年 6 月 1 日にメンテナンスを開始し、2023 年 6 月 1 日にサポートを終了しました。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
cdk bootstrap
という名前の CDK ブートストラップスタックを AWS 環境にデプロイして、CDK デプロイ用の AWS 環境CDKToolkit
を準備します。
ブートストラップスタックは、 環境で Amazon S3 バケットと Amazon ECR リポジトリを AWS プロビジョニングする CloudFormation スタックです。 AWS CDK CLI は、これらのリソースを使用して、デプロイ中に合成されたテンプレートと関連アセットを保存します。
使用方法
$
cdk bootstrap
<arguments>
<options>
引数
- AWS 環境
-
ブートストラップスタックをデプロイするターゲット AWS 環境の形式は です
aws://<account-id>/<region>
。例:
aws://123456789012/us-east-1
この引数は、ブートストラップスタックを複数の環境にデプロイするために、1 つのコマンドで複数回指定できます。
デフォルトでは、CDK CLIは CDK アプリで参照されるすべての環境をブートストラップするか、デフォルトのソースから環境を決定します。これは、
--profile
オプション、環境変数、またはデフォルトの AWS CLI ソースを使用して指定された環境です。
オプション
すべての CDK CLI コマンドで動作するグローバルオプションのリストについては、「」を参照してくださいグローバルオプション。
--bootstrap-bucket-name, --toolkit-bucket-name, -b
STRING
-
CDK で使用される Amazon S3 バケットの名前CLI。このバケットは作成され、現在存在してはいけません。
Amazon S3 バケットのデフォルト名を上書きするには、このオプションを指定します。
このオプションを使用する場合は、合成をカスタマイズする必要がある場合があります。詳細については、「CDK スタック合成をカスタマイズする」を参照してください。
デフォルト値: 未定義
--bootstrap-customer-key
BOOLEAN
-
ブートストラップバケットのカスタマーマスターキー (CMK) を作成します (課金されますが、最新のブートストラップのみアクセス許可をカスタマイズできます)。
このオプションは
--bootstrap-kms-key-id
と互換性がありません。デフォルト値: 未定義
--bootstrap-kms-key-id
STRING
-
SSE-KMS 暗号化に使用する AWS KMS マスターキー ID。
Amazon S3 バケットの暗号化に使用されるデフォルト AWS KMS キーを上書きするには、このオプションを指定します。
このオプションは
--bootstrap-customer-key
と互換性がありません。デフォルト値: 未定義
--cloudformation-execution-policies
ARRAY
-
スタックのデプロイ AWS CloudFormation 中に が引き受けるデプロイロールにアタッチする必要があるマネージド ARNs。
デフォルトでは、スタックは
AdministratorAccess
ポリシーを使用して完全な管理者アクセス許可でデプロイされます。このオプションは、1 つのコマンドで複数回指定できます。複数の ARNs 1 つの文字列として指定し、個々の ARNsをカンマで区切ることもできます。以下に例を示します。
$
cdk bootstrap --cloudformation-execution-policies
"arn:aws:iam::aws:policy/AWSLambda_FullAccess,arn:aws:iam::aws:policy/AWSCodeDeployFullAccess"
デプロイの失敗を回避するには、指定したポリシーが、ブートストラップされる環境に実行するデプロイに十分であることを確認してください。
このオプションは、最新のブートストラップにのみ適用されます。
重要
最新のブートストラップテンプレートは、 が暗示するアクセス許可
--cloudformation-execution-policies
を--trust
リスト内の任意の AWS アカウントに効果的に付与します。デフォルトでは、これにより、ブートストラップされたアカウントの任意のリソースに対する読み取りおよび書き込みのアクセス許可が拡張されます。ブートストラップスタックには、使い慣れたポリシーと信頼できるアカウントを設定してください。デフォルト値:
[]
--custom-permissions-boundary, -cpb
STRING
-
使用するアクセス許可の境界の名前を指定します。
このオプションは
--example-permissions-boundary
と互換性がありません。デフォルト値: 未定義
--example-permissions-boundary, -epb
BOOLEAN
-
が提供するアクセス許可の境界の例を使用します AWS CDK。
このオプションは
--custom-permissions-boundary
と互換性がありません。CDK が提供するアクセス許可の境界ポリシーを例として見なす必要があります。機能をテストする場合は、コンテンツを編集し、サンプルポリシーを参照してください。実際のデプロイ用の新しいポリシーが存在しない場合は、そのポリシーに変換します。問題はドリフトを回避することです。ほとんどの場合、アクセス許可の境界は維持され、専用の規則があり、命名が含まれています。
アクセス許可の境界の使用など、アクセス許可の設定の詳細については、「セキュリティと安全の開発ガイド
」を参照してください。 デフォルト値: 未定義
--execute
BOOLEAN
-
変更セットを実行するかどうかを設定します。
デフォルト値:
true
--force, -f
BOOLEAN
-
ブートストラップテンプレートのバージョンをダウングレードする場合でも、必ずブートストラップしてください。
デフォルト値:
false
--help, -h
BOOLEAN
-
コマンドの
cdk bootstrap
コマンドリファレンス情報を表示します。 --previous-parameters
BOOLEAN
-
既存のパラメータには以前の値を使用します。
一連のパラメータを使用してブートストラップテンプレートをデプロイしたら、このオプションを に設定
false
して、今後のデプロイでパラメータを変更する必要があります。の場合false
、以前に指定したすべてのパラメータを再供給する必要があります。デフォルト値:
true
--public-access-block-configuration
BOOLEAN
-
CDK によって作成および使用される Amazon S3 バケットのパブリックアクセス設定をブロックしますCLI。
デフォルト値:
true
--qualifier
STRING
-
ブートストラップスタックごとに一意の文字列値。この値は、ブートストラップスタック内のリソースの物理 ID に追加されます。
修飾子を指定することで、同じ環境で複数のブートストラップスタックをプロビジョニングする際のリソース名の競合を回避できます。
修飾子を変更する場合、CDK アプリは変更された値をスタックシンセサイザーに渡す必要があります。詳細については、「CDK スタック合成をカスタマイズする」を参照してください。
デフォルト値:
hnb659fds
。この値には意味がありません。 --show-template
BOOLEAN
-
ブートストラップの代わりに、現在のブートストラップテンプレートを標準出力 () に出力します
stdout
。その後、必要に応じてテンプレートをコピーしてカスタマイズできます。デフォルト値:
false
-
の形式でブートストラップスタックに追加するタグ
KEY=VALUE
。デフォルト値:
[]
--template
STRING
-
組み込みのテンプレートではなく、特定のファイルのテンプレートを使用します。
--termination-protection
BOOLEAN
-
ブートストラップスタック AWS CloudFormation の終了保護を切り替えます。
の場合
true
、終了保護が有効になります。これにより、ブートストラップスタックが誤って削除されるのを防ぐことができます。終了保護の詳細については、「 AWS CloudFormation ユーザーガイド」の「スタックが削除されないように保護する」を参照してください。
デフォルト値: 未定義
--toolkit-stack-name
STRING
-
作成するブートストラップスタックの名前。
デフォルトでは、 は指定された AWS 環境に という名前のスタック
CDKToolkit
をcdk bootstrap
デプロイします。ブートストラップスタックに別の名前を指定するには、このオプションを使用します。デフォルト値:
CDKToolkit
必須: はい
--trust
ARRAY
-
この環境へのデプロイを実行するために信頼する必要がある AWS アカウント IDs。
ブートストラップを実行しているアカウントは常に信頼されます。
このオプションでは、 も指定する必要があります
--cloudformation-execution-policies
。このオプションは、1 つのコマンドで複数回指定できます。
このオプションは、最新のブートストラップにのみ適用されます。
既存のブートストラップスタックに信頼されたアカウントを追加するには、以前に提供したアカウントを含め、信頼するすべてのアカウントを指定する必要があります。信頼する新しいアカウントのみを指定すると、以前に信頼されたアカウントは削除されます。
以下は、2 つのアカウントを信頼する例です。
$
cdk bootstrap
⏳ Bootstrapping environment aws://123456789012/us-west-2... Trusted accounts for deployment: 234567890123, 987654321098 Trusted accounts for lookup: (none) Execution policies: arn:aws:iam::aws:policy/AdministratorAccess CDKToolkit: creating CloudFormation changeset... ✅ Environment aws://123456789012/us-west-2 bootstrapped.aws://123456789012/us-west-2
--trust234567890123
--trust987654321098
--cloudformation-execution-policiesarn:aws:iam::aws:policy/AdministratorAccess
重要
最新のブートストラップテンプレートは、 が暗示するアクセス許可
--cloudformation-execution-policies
を--trust
リスト内の任意の AWS アカウントに効果的に付与します。デフォルトでは、これにより、ブートストラップされたアカウントの任意のリソースに対する読み取りおよび書き込みのアクセス許可が拡張されます。ブートストラップスタックには、使い慣れたポリシーと信頼できるアカウントを設定してください。デフォルト値:
[]
--trust-for-lookup
ARRAY
-
この環境で値を検索するために信頼する必要がある AWS アカウント IDs。
このオプションを使用して、環境にデプロイされるスタックを合成するアクセス許可をアカウントに付与します。実際には、これらのスタックを直接デプロイするアクセス許可は付与しません。
このオプションは、1 つのコマンドで複数回指定できます。
このオプションは、最新のブートストラップにのみ適用されます。
デフォルト値:
[]
例
prod プロファイルで指定された AWS 環境をブートストラップする
$
cdk bootstrap --profile prod
ブートストラップスタックを環境 foo と bar にデプロイする
$
cdk bootstrap --app='node bin/main.js' foo bar
ブートストラップテンプレートをエクスポートしてカスタマイズする
ブートストラップテンプレートで満たされていない特定の要件がある場合は、ニーズに合わせてカスタマイズできます。
ブートストラップテンプレートをエクスポートし、変更して、 を使用してデプロイできます AWS CloudFormation。既存のテンプレートをエクスポートする例を次に示します。
$
cdk bootstrap --show-template > bootstrap-template.yaml
カスタムテンプレートを使用するCLIように CDK に指示することもできます。以下に例を示します。
$
cdk bootstrap --template my-bootstrap-template.yaml
アクセス許可の境界を持つブートストラップ。次に、そのアクセス許可の境界を削除します。
カスタムアクセス許可の境界を使用してブートストラップするには、以下を実行します。
$
cdk bootstrap --custom-permissions-boundary my-permissions-boundary
アクセス許可の境界を削除するには、以下を実行します。
$
cdk bootstrap --no-previous-parameters
修飾子を使用して、開発環境用に作成されたリソースを区別する
$
cdk bootstrap --qualifier dev2024