cdk bootstrap - AWS Cloud Development Kit (AWS CDK) v2

これは AWS CDK v2 デベロッパーガイドです。古い v1 CDK は 2022 年 6 月 1 日にメンテナンスを開始し、2023 年 6 月 1 日にサポートを終了しました。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

cdk bootstrap

という名前のCDKブートストラップスタックを AWS 環境にデプロイしてCDKToolkit、CDKデプロイ用の AWS 環境を準備します。

ブートストラップスタックは、 環境で 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 つのコマンドで複数回指定できます。

デフォルトでは、 CDKCLI は、CDKアプリで参照されているすべての環境をブートストラップするか、デフォルトのソースから環境を決定します。これは、 --profileオプション、環境変数、またはデフォルトの AWS CLI ソースを使用して指定された環境です。

オプション

すべての で動作するグローバルオプションのリスト CDK CLI コマンドについては、「」を参照してくださいグローバルオプション

--bootstrap-bucket-name, --toolkit-bucket-name, -b STRING

で使用される Amazon S3 バケットの名前 CDK CLI。 このバケットは作成され、現在存在していない必要があります。

Amazon S3 バケットのデフォルト名を上書きするには、このオプションを指定します。

このオプションを使用する場合、合成をカスタマイズする必要がある場合があります。詳細については、「CDK スタック合成をカスタマイズする」を参照してください。

デフォルト値 : 未定義

--bootstrap-customer-key BOOLEAN

ブートストラップバケットのカスタマーマスターキー (CMK) を作成します (課金されますが、最新のブートストラップのみ許可をカスタマイズできます)。

このオプションは --bootstrap-kms-key-id と互換性がありません。

デフォルト値 : 未定義

--bootstrap-kms-key-id STRING

に使用する AWS KMS マスターキー ID SSE-KMS 暗号化。

Amazon S3 バケットの暗号化に使用されるデフォルト AWS KMS キーを上書きするには、このオプションを指定します。

このオプションは --bootstrap-customer-key と互換性がありません。

デフォルト値 : 未定義

--cloudformation-execution-policies ARRAY

スタックのデプロイ AWS CloudFormation 中に が引き受けARNsるデプロイロールにアタッチする必要がある マネージドIAMポリシー。

デフォルトでは、スタックは AdministratorAccessポリシーを使用して完全な管理者アクセス許可でデプロイされます。

このオプションは、1 つのコマンドで複数回指定できます。複数の を 1 つの文字列ARNsとして指定し、個々の をカンマで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

によって作成および使用される Amazon S3 バケットでのパブリックアクセス設定のブロック CDK CLI.

デフォルト値: true

--qualifier STRING

ブートストラップスタックごとに一意の 9 桁の文字列値。この値は、ブートストラップスタック内のリソースの物理 ID に追加されます。

修飾子を指定することで、同じ環境で複数のブートストラップスタックをプロビジョニングする際のリソース名の衝突を回避できます。

修飾子を変更する場合、CDKアプリケーションは変更された値をスタックシンセサイザーに渡す必要があります。詳細については、「CDK スタック合成をカスタマイズする」を参照してください。

デフォルト値: hnb659fds。この値には意味がありません。

--show-template BOOLEAN

ブートストラップの代わりに、現在のブートストラップテンプレートを標準出力 () に出力しますstdout。その後、必要に応じてテンプレートをコピーしてカスタマイズできます。

デフォルト値: false

--tags, -t ARRAY

の形式でブートストラップスタックに追加するタグKEY=VALUE

デフォルト値: []

--template STRING

組み込みのテンプレートではなく、指定されたファイルからテンプレートを使用します。

--termination-protection BOOLEAN

ブートストラップスタックの終了 AWS CloudFormation 保護を切り替えます。

の場合true、終了保護が有効になります。これにより、ブートストラップスタックが誤って削除されるのを防ぐことができます。

終了保護の詳細については、AWS CloudFormation 「 ユーザーガイド」の「スタックが削除されないように保護する」を参照してください。

デフォルト値 : 未定義

--toolkit-stack-name STRING

作成するブートストラップスタックの名前。

デフォルトでは、 は指定された AWS 環境に という名前のスタックCDKToolkitcdk bootstrapデプロイします。ブートストラップスタックに別の名前を指定するには、このオプションを使用します。

の CDK CLI はこの値を使用してブートストラップスタックのバージョンを検証します。

デフォルト値: CDKToolkit

必須: はい

--trust ARRAY

この環境へのデプロイを実行するために信頼される AWS アカウント IDs 。

ブートストラップを実行するアカウントは常に信頼されます。

このオプションでは、 も指定する必要があります--cloudformation-execution-policies

このオプションは、1 つのコマンドで複数回指定できます。

このオプションは、最新のブートストラップにのみ適用されます。

信頼されたアカウントを既存のブートストラップスタックに追加するには、以前に提供したアカウントを含め、信頼するすべてのアカウントを指定する必要があります。信頼する新しいアカウントのみを指定すると、以前に信頼されたアカウントは削除されます。

以下は、2 つのアカウントを信頼する例です。

$ cdk bootstrap aws://123456789012/us-west-2 --trust 234567890123 --trust 987654321098 --cloudformation-execution-policies arn:aws:iam::aws:policy/AdministratorAccess ⏳ 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.
重要

最新のブートストラップテンプレートは、 によって暗示されるアクセス許可--cloudformation-execution-policies--trustリスト内の任意の AWS アカウントに効果的に付与します。デフォルトでは、これにより、ブートストラップされたアカウントの任意のリソースに対する読み取りおよび書き込みのアクセス許可が拡張されます。ブートストラップスタックには、使い慣れたポリシーと信頼できるアカウントを設定してください。

デフォルト値: []

--trust-for-lookup ARRAY

この環境で値を検索するために信頼される AWS アカウント IDs 。

このオプションを使用して、実際にはそれらのスタックを直接デプロイするアクセス許可をアカウントに付与することなく、環境にデプロイされるスタックを合成するアクセス許可を付与します。

このオプションは、1 つのコマンドで複数回指定できます。

このオプションは、最新のブートストラップにのみ適用されます。

デフォルト値: []

製品プロファイルで指定された 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

また、 CDKCLI カスタムテンプレートを使用します。以下に例を示します。

$ cdk bootstrap --template my-bootstrap-template.yaml

アクセス許可の境界を持つブートストラップ。次に、そのアクセス許可の境界を削除します。

カスタムアクセス許可の境界でブートストラップするには、以下を実行します。

$ cdk bootstrap --custom-permissions-boundary my-permissions-boundary

アクセス許可の境界を削除するには、以下を実行します。

$ cdk bootstrap --no-previous-parameters

修飾子を使用して、開発環境に作成されたリソースを区別する

$ cdk bootstrap --qualifier dev2024