Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Cree e implemente activos de imagen de contenedores en aplicaciones de CDK

Modo de enfoque
Cree e implemente activos de imagen de contenedores en aplicaciones de CDK - AWS Cloud Development Kit (AWS CDK) v2

Esta es la guía para AWS CDK desarrolladores de la versión 2. La primera versión del CDK pasó a la etapa de mantenimiento el 1.° de junio de 2022 y no cuenta con soporte desde el 1.° de junio de 2023.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Esta es la guía para AWS CDK desarrolladores de la versión 2. La primera versión del CDK pasó a la etapa de mantenimiento el 1.° de junio de 2022 y no cuenta con soporte desde el 1.° de junio de 2023.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Al crear activos de imagen de contenedores con AWS Cloud Development Kit (AWS CDK), Docker se utiliza de forma predeterminada para realizar estas acciones. Si desea utilizar una herramienta de gestión de contenedores diferente, puede sustituirla Docker a través de la variable de CDK_DOCKER entorno.

Ejemplo: cree y publique un recurso de imagen de contenedor con AWS CDK

El siguiente es un ejemplo sencillo de una AWS CDK aplicación que crea y publica un activo de contenedor en Amazon Elastic Container Registry (Amazon ECR) mediante Docker de forma predeterminada:

Estructura del proyecto:

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

Código de aplicación:

En lib/docker/app/index.js:

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

Pila de 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, }); } }

Aplicación 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');

Cuando ejecutamoscdk deploy, la interfaz de línea de AWS Cloud Development Kit (AWS CDK) comandos (CLI) hace lo siguiente:

  1. Construye el Docker imagen: se ejecuta docker build localmente en función del directorio especificado (lib/docker). Dockerfile

  2. Etiquete la imagen: ejecute esta docker tag acción para etiquetar la imagen creada con un hash único, basado en el contenido de la imagen.

  3. Publicar en Amazon ECR: ejecute docker push para publicar la imagen del contenedor en un repositorio de Amazon ECR. Este repositorio ya debe existir. Se crea durante el proceso de arranque predeterminado.

  4. Generar el URI de la imagen: tras una implementación correcta, el URI de Amazon ECR de la imagen del contenedor publicada se muestra en la línea de comandos. Este es el URI de nuestro Docker imagen en Amazon ECR.

¿Cómo reemplazar Docker con otra herramienta de gestión de contenedores

Utilice la variable de CDK_DOCKER entorno para especificar la ruta al binario de la herramienta de administración de contenedores que la sustituya. El siguiente es un ejemplo de sustitución Docker por 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

No se admiten los alias ni los enlaces. Para reemplazar Docker, debe utilizar la variable de CDK_DOCKER entorno.

Compatible Docker motores de recambio integrados

Finch es compatible, aunque puede haber algunos Docker funciones que no están disponibles o que pueden funcionar de forma diferente a medida que la herramienta evoluciona. Para obtener más información sobre Finch, consulte Ready for Flight: ¡Anunciamos Finch 1.0 GA! en el blog de código AWS abierto.

Es posible que funcionen otras herramientas de administración de contenedores. El CDK no comprueba cuáles Docker el reemplazo que está utilizando para determinar si es compatible. Si la herramienta tiene un equivalente Docker comanda y se comporta de manera similar, debería funcionar.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.