Questa è la guida per sviluppatori AWS CDK v2. La versione precedente della CDK versione 1 è entrata in manutenzione il 1° giugno 2022 e ha terminato il supporto il 1° giugno 2023.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
cdk bootstrap
Prepara un AWS ambiente per le CDK distribuzioni distribuendo lo stack di CDK bootstrap, denominato, nell'ambiente. CDKToolkit
AWS
Lo stack bootstrap è uno CloudFormation stack che fornisce un bucket Amazon S3 e un repository Amazon ECR nell'ambiente. AWS Il AWS CDK CLI utilizza queste risorse per archiviare modelli sintetizzati e risorse correlate durante la distribuzione.
Utilizzo
$
cdk bootstrap
<arguments>
<options>
Argomenti
- AWS ambiente
-
L' AWS ambiente di destinazione in cui distribuire lo stack di bootstrap nel seguente formato:.
aws://<account-id>/<region>
Esempio:
aws://123456789012/us-east-1
Questo argomento può essere fornito più volte in un unico comando per distribuire lo stack di bootstrap in più ambienti.
Per impostazione predefinita, il CDK CLI avvierà tutti gli ambienti a cui si fa riferimento nell'CDKapp o determinerà un ambiente dalle sorgenti predefinite. Potrebbe trattarsi di un ambiente specificato utilizzando l'
--profile
opzione, da variabili di ambiente o da fonti predefinite AWS CLI .
Opzioni
Per un elenco di opzioni globali che funzionano con tutti CDK CLI comandi, vediOpzioni globali.
--bootstrap-bucket-name, --toolkit-bucket-name, -b
STRING
-
Il nome del bucket Amazon S3 che verrà utilizzato da CDK CLI. Questo bucket verrà creato e attualmente non deve esistere.
Fornisci questa opzione per sostituire il nome predefinito del bucket Amazon S3.
Quando usi questa opzione, potresti dover personalizzare la sintesi. Per ulteriori informazioni, consulta Personalizza la CDK sintesi dello stack.
Valore predefinito: non definito
--bootstrap-customer-key
BOOLEAN
-
Crea una Customer Master Key (CMK) per il bucket bootstrap (ti verrà addebitato un costo ma puoi personalizzare le autorizzazioni, solo il bootstrap moderno).
Questa opzione non è compatibile con.
--bootstrap-kms-key-id
Valore predefinito: non definito
--bootstrap-kms-key-id
STRING
-
L'ID della chiave AWS KMS principale da utilizzare per SSE-KMS crittografia.
Fornisci questa opzione per sovrascrivere la AWS KMS chiave predefinita utilizzata per crittografare il bucket Amazon S3.
Questa opzione non è compatibile con.
--bootstrap-customer-key
Valore predefinito: non definito
--cloudformation-execution-policies
ARRAY
-
La IAM policy ARNs gestita da allegare al ruolo di distribuzione assunto da AWS CloudFormation durante la distribuzione degli stack.
Per impostazione predefinita, gli stack vengono distribuiti con le autorizzazioni complete di amministratore utilizzando la policy.
AdministratorAccess
È possibile fornire questa opzione più volte in un unico comando. Puoi anche fornire più stringhe ARNs come singola stringa, ARNs separandole da virgole. Di seguito è riportato un esempio:
$
cdk bootstrap --cloudformation-execution-policies
"arn:aws:iam::aws:policy/AWSLambda_FullAccess,arn:aws:iam::aws:policy/AWSCodeDeployFullAccess"
Per evitare errori di distribuzione, assicurati che le politiche specificate siano sufficienti per tutte le distribuzioni che eseguirai nell'ambiente da avviare.
Questa opzione si applica solo al bootstrap moderno.
Importante
Il moderno modello di bootstrap concede efficacemente le autorizzazioni implicite da
--cloudformation-execution-policies
a qualsiasi account nell'elenco. AWS--trust
Per impostazione predefinita, questo estende le autorizzazioni di lettura e scrittura a qualsiasi risorsa nell'account avviato. Assicurati di configurare lo stack di bootstrap con politiche e account affidabili con cui ti senti a tuo agio.Valore predefinito:
[]
--custom-permissions-boundary, -cpb
STRING
-
Specificate il nome di un limite di autorizzazioni da utilizzare.
Questa opzione non è compatibile con.
--example-permissions-boundary
Valore predefinito: non definito
--example-permissions-boundary, -epb
BOOLEAN
-
Utilizza il limite delle autorizzazioni di esempio, fornito da. AWS CDK
Questa opzione non è compatibile con.
--custom-permissions-boundary
La politica di delimitazione delle autorizzazioni CDK fornita deve essere considerata un esempio. Modifica il contenuto e fai riferimento alla politica di esempio se stai testando la funzionalità. Convertitela in una nuova policy per le implementazioni effettive, se non ne esiste già una. La preoccupazione è evitare la deriva. Molto probabilmente, viene mantenuto un limite di autorizzazioni e prevede convenzioni dedicate, denominazione inclusa.
Valore predefinito: non definito
--execute
BOOLEAN
-
Configura se eseguire il set di modifiche.
Valore predefinito:
true
--force, -f
BOOLEAN
-
Avvia sempre il bootstrap, anche se comporterebbe il downgrade della versione del modello di bootstrap.
Valore predefinito:
false
--help, -h
BOOLEAN
-
Mostra le informazioni di riferimento del comando.
cdk bootstrap
--previous-parameters
BOOLEAN
-
Utilizzate i valori precedenti per i parametri esistenti.
Una volta distribuito un modello di bootstrap con un set di parametri, è necessario impostare questa opzione
false
per modificare qualsiasi parametro nelle distribuzioni future. Quandofalse
, è necessario fornire nuovamente tutti i parametri forniti in precedenza.Valore predefinito:
true
--public-access-block-configuration
BOOLEAN
-
Blocca la configurazione dell'accesso pubblico sul bucket Amazon S3 creato e utilizzato da CDK CLI.
Valore predefinito:
true
--qualifier
STRING
-
Valore di stringa a nove cifre unico per ogni stack di bootstrap. Questo valore viene aggiunto all'ID fisico delle risorse nello stack di bootstrap.
Fornendo un qualificatore, si evitano conflitti tra i nomi delle risorse quando si effettua il provisioning di più stack di bootstrap nello stesso ambiente.
Quando modificate il qualificatore, l'CDKapp deve passare il valore modificato al sintetizzatore dello stack. Per ulteriori informazioni, consulta Personalizza la CDK sintesi dello stack.
Valore predefinito:
hnb659fds
. Questo valore non ha alcun significato. --show-template
BOOLEAN
-
Invece di eseguire il bootstrap, stampa il modello di bootstrap corrente sullo standard output ().
stdout
È quindi possibile copiare e personalizzare il modello secondo necessità.Valore predefinito:
false
-
Tag da aggiungere allo stack di bootstrap nel formato di.
KEY=VALUE
Valore predefinito:
[]
--template
STRING
-
Usa il modello del file fornito invece di quello integrato.
--termination-protection
BOOLEAN
-
Attiva la protezione dalla AWS CloudFormation terminazione nello stack di bootstrap.
Quando è abilitata la protezione dalla
true
terminazione. Ciò impedisce che lo stack di bootstrap venga eliminato accidentalmente.Per ulteriori informazioni sulla protezione dalla terminazione, consulta Proteggere uno stack dall'eliminazione nella Guida per l'utente.AWS CloudFormation
Valore predefinito: non definito
--toolkit-stack-name
STRING
-
Il nome dello stack di bootstrap da creare.
Per impostazione predefinita,
cdk bootstrap
distribuisce uno stack denominatoCDKToolkit
nell'ambiente specificato. AWS Utilizzate questa opzione per fornire un nome diverso per lo stack di bootstrap.Il CDK CLI utilizza questo valore per verificare la versione dello stack di bootstrap.
Valore predefinito:
CDKToolkit
Campo obbligatorio: sì
--trust
ARRAY
-
Account AWS IDsQuesto dovrebbe essere considerato attendibile per eseguire le distribuzioni in questo ambiente.
L'account che esegue il bootstrap sarà sempre considerato attendibile.
Questa opzione richiede che tu fornisca anche.
--cloudformation-execution-policies
È possibile fornire questa opzione più volte in un unico comando.
Questa opzione si applica solo al bootstrap moderno.
Per aggiungere account affidabili a uno stack di bootstrap esistente, devi specificare tutti gli account attendibili, inclusi quelli che potresti aver fornito in precedenza. Se fornisci solo nuovi account da considerare attendibili, gli account precedentemente attendibili verranno rimossi.
Di seguito è riportato un esempio in cui vengono considerati attendibili due account:
$
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
Importante
Il moderno modello di bootstrap concede in modo efficace le autorizzazioni implicite da
--cloudformation-execution-policies
a qualsiasi AWS account nell'elenco.--trust
Per impostazione predefinita, questo estende le autorizzazioni di lettura e scrittura a qualsiasi risorsa nell'account avviato. Assicurati di configurare lo stack di bootstrap con politiche e account affidabili con cui ti senti a tuo agio.Valore predefinito:
[]
--trust-for-lookup
ARRAY
-
Account AWS IDsQuesto dovrebbe essere considerato attendibile per cercare valori in questo ambiente.
Utilizzate questa opzione per autorizzare gli account a sintetizzare gli stack che verranno distribuiti nell'ambiente, senza concedere loro effettivamente il permesso di distribuire direttamente quegli stack.
È possibile fornire questa opzione più volte in un unico comando.
Questa opzione si applica solo al bootstrap moderno.
Valore predefinito:
[]
Esempi
Avvia l' AWS ambiente specificato nel profilo prod
$
cdk bootstrap --profile prod
Distribuisci lo stack di bootstrap negli ambienti foo e bar
$
cdk bootstrap --app='node bin/main.js' foo bar
Esporta il modello di bootstrap per personalizzarlo
Se hai requisiti specifici che non sono soddisfatti dal modello di bootstrap, puoi personalizzarlo in base alle tue esigenze.
Puoi esportare il modello di bootstrap, modificarlo e distribuirlo utilizzando. AWS CloudFormation Di seguito è riportato un esempio di esportazione del modello esistente:
$
cdk bootstrap --show-template > bootstrap-template.yaml
Puoi anche dire al CDK CLI per utilizzare un modello personalizzato. Di seguito è riportato un esempio:
$
cdk bootstrap --template my-bootstrap-template.yaml
Bootstrap con un limite di autorizzazioni. Quindi, rimuovi quel limite di autorizzazioni
Per eseguire il bootstrap con un limite di autorizzazioni personalizzato, eseguiamo quanto segue:
$
cdk bootstrap --custom-permissions-boundary my-permissions-boundary
Per rimuovere il limite delle autorizzazioni, eseguiamo quanto segue:
$
cdk bootstrap --no-previous-parameters
Utilizzate un qualificatore per distinguere le risorse create per un ambiente di sviluppo
$
cdk bootstrap --qualifier dev2024