Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Crea e distribuisci risorse di immagini dei container nelle app CDK

Modalità Focus
Crea e distribuisci risorse di immagini dei container nelle app CDK - AWS Cloud Development Kit (AWS CDK) v2

Questa è la guida per sviluppatori AWS CDK v2. Il vecchio CDK v1 è entrato 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à.

Questa è la guida per sviluppatori AWS CDK v2. Il vecchio CDK v1 è entrato 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à.

Quando crei risorse di immagini dei contenitori con, AWS Cloud Development Kit (AWS CDK)Docker viene utilizzato di default per eseguire queste azioni. Se desideri utilizzare uno strumento di gestione dei contenitori diverso, puoi sostituirlo Docker tramite la variabile di CDK_DOCKER ambiente.

Esempio: crea e pubblica una risorsa di immagine contenitore con AWS CDK

Di seguito è riportato un semplice esempio di AWS CDK app che crea e pubblica una risorsa contenitore su Amazon Elastic Container Registry (Amazon ECR) utilizzando Docker per impostazione predefinita:

Struttura del progetto:

my-cdk-app/ ├── lib/ │ ├── my-stack.ts │ └── docker/ │ ├── Dockerfile │ └── app/ │ └── index.js ├── bin/ │ └── my-cdk-app.ts ├── package.json ├── tsconfig.json └── cdk.json

Dockerfile:

FROM public.ecr.aws/lambda/nodejs:16 # Copy application code COPY app/ /var/task/ # (Optional) Install dependencies # RUN npm install # The AWS Lambda Node.js base image looks for index.handler by default

Codice dell'applicazione:

In lib/docker/app/index.js:

console.log("Hello from inside the container!");

Stack CDK:

import * as cdk from 'aws-cdk-lib'; import { Construct } from 'constructs'; import * as ecr_assets from 'aws-cdk-lib/aws-ecr-assets'; export class MyStack extends cdk.Stack { constructor(scope: Construct, id: string) { super(scope, id); // Define a Docker image asset const dockerImageAsset = new ecr_assets.DockerImageAsset(this, 'MyDockerImage', { directory: 'lib/docker', // Path to the directory containing the Dockerfile }); // Output the ECR URI new cdk.CfnOutput(this, 'ECRImageUri', { value: dockerImageAsset.imageUri, }); } }

App CDK:

#!/usr/bin/env node import * as cdk from 'aws-cdk-lib'; import { MyStack } from '../lib/my-stack'; const app = new cdk.App(); new MyStack(app, 'MyStack');

Quando eseguiamocdk deploy, l'interfaccia a AWS Cloud Development Kit (AWS CDK) riga di comando (CLI) fa quanto segue:

  1. Costruisci il Docker image — Esegui docker build localmente in base Dockerfile a nella directory specificata (lib/docker).

  2. Etichetta l'immagine: esegui docker tag per etichettare l'immagine creata con un hash univoco, in base al contenuto dell'immagine.

  3. Pubblica su Amazon ECR: esegui docker push per pubblicare l'immagine del contenitore in un repository Amazon ECR. Questo repository deve già esistere. Viene creato durante il processo di bootstrap predefinito.

  4. Esporta l'URI dell'immagine: dopo una distribuzione corretta, l'URI Amazon ECR dell'immagine del contenitore pubblicata viene emesso nel prompt dei comandi. Questo è l'URI del nostro Docker immagine in Amazon ECR.

Come sostituire Docker con un altro strumento di gestione dei container

Utilizzate la variabile di CDK_DOCKER ambiente per specificare il percorso del file binario dello strumento di gestione dei container sostitutivo. Di seguito è riportato un esempio di sostituzione Docker con Finch:

$ which finch /usr/local/bin/finch # Locate the path to the binary $ export CDK_DOCKER='/usr/local/bin/finch' # Set the environment variable $ cdk deploy # Deploy using the replacement

L'aliasing o il collegamento non sono supportati. Da sostituire Docker, è necessario utilizzare la variabile di CDK_DOCKER ambiente.

Supportato Docker motori sostitutivi drop-in

Finch è supportato, anche se potrebbero essercene alcuni Docker funzionalità che non sono disponibili o che potrebbero funzionare in modo diverso a seconda dell'evoluzione dello strumento. Per ulteriori informazioni su Finch, vedi Ready for Flight: Announcing Finch 1.0 GA! nel blog AWS Open Source.

Altri strumenti di gestione dei container potrebbero funzionare. Il CDK non verifica quali Docker sostituzione che stai utilizzando per determinare se è supportata. Se lo strumento ha un equivalente Docker comanda e si comporta in modo simile, dovrebbe funzionare.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.