Skip to main content

This module allows you to copy docker image assets to a repository you control. This can be necessary if you want to build a Docker image in one CDK app and consume it in a different app or outside the CDK.

Project description

CDK Docker Image Deployment

This module allows you to copy docker image assets to a repository you control. This can be necessary if you want to build a Docker image in one CDK app and consume it in a different app or outside the CDK, or if you want to apply a lifecycle policy to all images of a part of your application.

Getting Started

Below is a basic example for how to use the DockerImageDeployment API:

import * as ecr from 'aws-cdk-lib/aws-ecr';
import * as imagedeploy from 'cdk-docker-image-deployment';

const repo = new ecr.Repository.fromRepositoryName(this, 'MyRepository', 'myrepository');

new imagedeploy.DockerImageDeployment(this, 'ExampleImageDeploymentWithTag', {
  source: imagedeploy.Source.directory('path/to/directory'),
  destination: imagedeploy.Destination.ecr(repo, {
    tag: 'myspecialtag',
  }),
});

Currently Supported Sources

  • Source.directory(): Supply a path to a local docker image as source.

Don't see a source listed? See if there is an open issue or PR already. If not, please open an issue asking for it or better yet, submit a contribution!

Currently Supported Destinations

  • Destination.ecr(repo, options): Send your docker image to an ECR repository in your stack's account.

Don't see a destination listed? See if there is an open issue or PR already. If not, please open an issue asking for it or better yet, submit a contribution!

Under the Hood

  1. When this stack is deployed (either via cdk deploy or via CI/CD), the contents of the local Docker image will be archived and uploaded to an intermediary assets ECR Repository using the cdk-assets mechanism.
  2. The DockerImageDeployment construct synthesizes a CodeBuild Project which uses docker to pull the image from the intermediary repository, tag the image if a tag is provided, and push the image to the destination repository.
  3. The deployment will wait until the CodeBuild Project completes successfully before finishing.

The architecture of this construct can be seen here:

Construct-Architecture

Security

See CONTRIBUTING for more information.

License

This project is licensed under the Apache-2.0 License.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cdk-docker-image-deployment-0.0.371.tar.gz (11.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cdk_docker_image_deployment-0.0.371-py3-none-any.whl (11.2 MB view details)

Uploaded Python 3

File details

Details for the file cdk-docker-image-deployment-0.0.371.tar.gz.

File metadata

File hashes

Hashes for cdk-docker-image-deployment-0.0.371.tar.gz
Algorithm Hash digest
SHA256 5200d4f9d95eab8ac870a2faddcf558b6fc6036836e7605b276833a4b1b72cc4
MD5 ff0e77cccc9285b69ea898b9225225da
BLAKE2b-256 0e5269c876df7e1d6f06d717968c0eb169b9b0d1462fd9d25678c9d0229b17a3

See more details on using hashes here.

File details

Details for the file cdk_docker_image_deployment-0.0.371-py3-none-any.whl.

File metadata

File hashes

Hashes for cdk_docker_image_deployment-0.0.371-py3-none-any.whl
Algorithm Hash digest
SHA256 0f7f1cb4e5f099cbd09741d44b344acd27a00952c444561441725f2b24ef2649
MD5 93f2c977cf5cc8fc394fd31392dc2657
BLAKE2b-256 43eb4b9ae4ed4dfe503734dab09019971c328360bcc1acb0f78f3d381309a982

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page