DockerImageAssetSource
- class aws_cdk.core.DockerImageAssetSource(*, source_hash, directory_name=None, docker_build_args=None, docker_build_target=None, docker_file=None, executable=None, network_mode=None, platform=None, repository_name=None)
Bases:
object
- Parameters:
source_hash (
str
) – The hash of the contents of the docker build context. This hash is used throughout the system to identify this image and avoid duplicate work in case the source did not change. NOTE: this means that if you wish to update your docker image, you must make a modification to the source (e.g. add some metadata to your Dockerfile).directory_name (
Optional
[str
]) – The directory where the Dockerfile is stored, must be relative to the cloud assembly root. Default: - Exactly one ofdirectoryName
andexecutable
is requireddocker_build_args (
Optional
[Mapping
[str
,str
]]) – Build args to pass to thedocker build
command. Since Docker build arguments are resolved before deployment, keys and values cannot refer to unresolved tokens (such aslambda.functionArn
orqueue.queueUrl
). Only allowed whendirectoryName
is specified. Default: - no build args are passeddocker_build_target (
Optional
[str
]) – Docker target to build to. Only allowed whendirectoryName
is specified. Default: - no targetdocker_file (
Optional
[str
]) – Path to the Dockerfile (relative to the directory). Only allowed whendirectoryName
is specified. Default: - no fileexecutable (
Optional
[Sequence
[str
]]) – An external command that will produce the packaged asset. The command should produce the name of a local Docker image onstdout
. Default: - Exactly one ofdirectoryName
andexecutable
is requirednetwork_mode (
Optional
[str
]) – Networking mode for the RUN commands during build. Requires Docker Engine API v1.25+. Specify this property to build images on a specific networking mode. Default: - no networking mode specifiedplatform (
Optional
[str
]) – Platform to build for. Requires Docker Buildx. Specify this property to build images on a specific platform. Default: - no platform specified (the current machine architecture will be used)repository_name (
Optional
[str
]) – (deprecated) ECR repository name. Specify this property if you need to statically address the image, e.g. from a Kubernetes Pod. Note, this is only the repository name, without the registry and the tag parts. Default: - automatically derived from the asset’s ID.
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.core as cdk docker_image_asset_source = cdk.DockerImageAssetSource( source_hash="sourceHash", # the properties below are optional directory_name="directoryName", docker_build_args={ "docker_build_args_key": "dockerBuildArgs" }, docker_build_target="dockerBuildTarget", docker_file="dockerFile", executable=["executable"], network_mode="networkMode", platform="platform", repository_name="repositoryName" )
Attributes
- directory_name
The directory where the Dockerfile is stored, must be relative to the cloud assembly root.
- Default:
Exactly one of
directoryName
andexecutable
is required
- docker_build_args
Build args to pass to the
docker build
command.Since Docker build arguments are resolved before deployment, keys and values cannot refer to unresolved tokens (such as
lambda.functionArn
orqueue.queueUrl
).Only allowed when
directoryName
is specified.- Default:
no build args are passed
- docker_build_target
Docker target to build to.
Only allowed when
directoryName
is specified.- Default:
no target
- docker_file
Path to the Dockerfile (relative to the directory).
Only allowed when
directoryName
is specified.- Default:
no file
- executable
An external command that will produce the packaged asset.
The command should produce the name of a local Docker image on
stdout
.- Default:
Exactly one of
directoryName
andexecutable
is required
- network_mode
Networking mode for the RUN commands during build. Requires Docker Engine API v1.25+.
Specify this property to build images on a specific networking mode.
- Default:
no networking mode specified
- platform
Platform to build for. Requires Docker Buildx.
Specify this property to build images on a specific platform.
- Default:
no platform specified (the current machine architecture will be used)
- repository_name
(deprecated) ECR repository name.
Specify this property if you need to statically address the image, e.g. from a Kubernetes Pod. Note, this is only the repository name, without the registry and the tag parts.
- Default:
automatically derived from the asset’s ID.
- Deprecated:
repository name should be specified at the environment-level and not at the image level
- Stability:
deprecated
- source_hash
The hash of the contents of the docker build context.
This hash is used throughout the system to identify this image and avoid duplicate work in case the source did not change.
NOTE: this means that if you wish to update your docker image, you must make a modification to the source (e.g. add some metadata to your Dockerfile).