Interface NetworkLoadBalancedTaskImageProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
NetworkLoadBalancedTaskImageProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-27T16:50:57.187Z") @Stability(Stable) public interface NetworkLoadBalancedTaskImageProps extends software.amazon.jsii.JsiiSerializable
Options for configuring a new container.

Example:

 // Two network load balancers, each with their own listener and target group.
 Cluster cluster;
 NetworkMultipleTargetGroupsEc2Service loadBalancedEc2Service = NetworkMultipleTargetGroupsEc2Service.Builder.create(this, "Service")
         .cluster(cluster)
         .memoryLimitMiB(256)
         .taskImageOptions(NetworkLoadBalancedTaskImageProps.builder()
                 .image(ContainerImage.fromRegistry("amazon/amazon-ecs-sample"))
                 .build())
         .loadBalancers(List.of(NetworkLoadBalancerProps.builder()
                 .name("lb1")
                 .listeners(List.of(NetworkListenerProps.builder()
                         .name("listener1")
                         .build()))
                 .build(), NetworkLoadBalancerProps.builder()
                 .name("lb2")
                 .listeners(List.of(NetworkListenerProps.builder()
                         .name("listener2")
                         .build()))
                 .build()))
         .targetGroups(List.of(NetworkTargetProps.builder()
                 .containerPort(80)
                 .listener("listener1")
                 .build(), NetworkTargetProps.builder()
                 .containerPort(90)
                 .listener("listener2")
                 .build()))
         .build();
 
  • Method Details

    • getImage

      @Stability(Stable) @NotNull ContainerImage getImage()
      The image used to start a container.

      Image or taskDefinition must be specified, but not both.

      Default: - none

    • getContainerName

      @Stability(Stable) @Nullable default String getContainerName()
      The container name value to be specified in the task definition.

      Default: - none

    • getContainerPorts

      @Stability(Stable) @Nullable default List<Number> getContainerPorts()
      A list of port numbers 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.

      Default: - [80]

    • getDockerLabels

      @Stability(Stable) @Nullable default Map<String,String> getDockerLabels()
      A key/value map of labels to add to the container.

      Default: - No labels.

    • getEnableLogging

      @Stability(Stable) @Nullable default Boolean getEnableLogging()
      Flag to indicate whether to enable logging.

      Default: true

    • getEnvironment

      @Stability(Stable) @Nullable default Map<String,String> getEnvironment()
      The environment variables to pass to the container.

      Default: - No environment variables.

    • getExecutionRole

      @Stability(Stable) @Nullable default IRole getExecutionRole()
      The name of the task execution IAM role that grants the Amazon ECS container agent permission to call AWS APIs on your behalf.

      Default: - No value

    • getFamily

      @Stability(Stable) @Nullable default String getFamily()
      The name of a family that this task definition is registered to.

      A family groups multiple versions of a task definition.

      Default: - Automatically generated name.

    • getLogDriver

      @Stability(Stable) @Nullable default LogDriver getLogDriver()
      The log driver to use.

      Default: - AwsLogDriver if enableLogging is true

    • getSecrets

      @Stability(Stable) @Nullable default Map<String,Secret> getSecrets()
      The secrets to expose to the container as an environment variable.

      Default: - No secret environment variables.

    • getTaskRole

      @Stability(Stable) @Nullable default IRole getTaskRole()
      The name of the task IAM role that grants containers in the task permission to call AWS APIs on your behalf.

      Default: - A task role is automatically created for you.

    • builder

      @Stability(Stable) static NetworkLoadBalancedTaskImageProps.Builder builder()
      Returns:
      a NetworkLoadBalancedTaskImageProps.Builder of NetworkLoadBalancedTaskImageProps