aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedTaskImageOptions

interface ApplicationLoadBalancedTaskImageOptions

LanguageType name
.NETAmazon.CDK.AWS.ECS.Patterns.ApplicationLoadBalancedTaskImageOptions
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsecspatterns#ApplicationLoadBalancedTaskImageOptions
Javasoftware.amazon.awscdk.services.ecs.patterns.ApplicationLoadBalancedTaskImageOptions
Pythonaws_cdk.aws_ecs_patterns.ApplicationLoadBalancedTaskImageOptions
TypeScript (source)aws-cdk-lib » aws_ecs_patterns » ApplicationLoadBalancedTaskImageOptions

Example

declare const cluster: ecs.Cluster;
const loadBalancedFargateService = new ecsPatterns.ApplicationLoadBalancedFargateService(this, 'Service', {
  cluster,
  memoryLimitMiB: 1024,
  desiredCount: 1,
  cpu: 512,
  taskImageOptions: {
    image: ecs.ContainerImage.fromRegistry("amazon/amazon-ecs-sample"),
  },
  taskSubnets: {
    subnets: [ec2.Subnet.fromSubnetId(this, 'subnet', 'VpcISOLATEDSubnet1Subnet80F07FA0')],
  },
  loadBalancerName: 'application-lb-name',
});

Properties

NameTypeDescription
imageContainerImageThe image used to start a container.
command?string[]The command that's passed to the container.
containerName?stringThe container name value to be specified in the task definition.
containerPort?numberThe port number on the container that is bound to the user-specified or automatically assigned host port.
dockerLabels?{ [string]: string }A key/value map of labels to add to the container.
enableLogging?booleanFlag to indicate whether to enable logging.
entryPoint?string[]The entry point that's passed to the container.
environment?{ [string]: string }The environment variables to pass to the container.
executionRole?IRoleThe name of the task execution IAM role that grants the Amazon ECS container agent permission to call AWS APIs on your behalf.
family?stringThe name of a family that this task definition is registered to.
logDriver?LogDriverThe log driver to use.
secrets?{ [string]: Secret }The secret to expose to the container as an environment variable.
taskRole?IRoleThe name of the task IAM role that grants containers in the task permission to call AWS APIs on your behalf.

image

Type: ContainerImage

The image used to start a container.

Image or taskDefinition must be specified, not both.


command?

Type: string[] (optional, default: none)

The command that's passed to the container.

If there are multiple arguments, make sure that each argument is a separated string in the array.

This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run.

For more information about the Docker CMD parameter, see https://docs.docker.com/engine/reference/builder/#cmd.


containerName?

Type: string (optional, default: none)

The container name value to be specified in the task definition.


containerPort?

Type: number (optional, default: 80)

The port number on the container that is bound to the user-specified or automatically assigned host port.

If you are using containers in a task with the awsvpc or host network mode, exposed ports should be specified using containerPort. If you are using containers in a task with the bridge network mode and you specify a container port and not a host port, your container automatically receives a host port in the ephemeral port range.

Port mappings that are automatically assigned in this way do not count toward the 100 reserved ports limit of a container instance.

For more information, see hostPort.


dockerLabels?

Type: { [string]: string } (optional, default: No labels.)

A key/value map of labels to add to the container.


enableLogging?

Type: boolean (optional, default: true)

Flag to indicate whether to enable logging.


entryPoint?

Type: string[] (optional, default: none)

The entry point that's passed to the container.

This parameter maps to Entrypoint in the Create a container section of the Docker Remote API and the --entrypoint option to docker run.

For more information about the Docker ENTRYPOINT parameter, see https://docs.docker.com/engine/reference/builder/#entrypoint.


environment?

Type: { [string]: string } (optional, default: No environment variables.)

The environment variables to pass to the container.


executionRole?

Type: IRole (optional, default: No value)

The name of the task execution IAM role that grants the Amazon ECS container agent permission to call AWS APIs on your behalf.


family?

Type: string (optional, default: Automatically generated name.)

The name of a family that this task definition is registered to.

A family groups multiple versions of a task definition.


logDriver?

Type: LogDriver (optional, default: AwsLogDriver if enableLogging is true)

The log driver to use.


secrets?

Type: { [string]: Secret } (optional, default: No secret environment variables.)

The secret to expose to the container as an environment variable.


taskRole?

Type: IRole (optional, default: A task role is automatically created for you.)

The name of the task IAM role that grants containers in the task permission to call AWS APIs on your behalf.