Interface NetworkLoadBalancedTaskImageOptions

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

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-27T16:50:57.186Z") @Stability(Stable) public interface NetworkLoadBalancedTaskImageOptions extends software.amazon.jsii.JsiiSerializable
Example:

 import software.amazon.awscdk.services.certificatemanager.Certificate;
 Cluster cluster;
 ICertificate certificate = Certificate.fromCertificateArn(this, "Cert", "arn:aws:acm:us-east-1:123456:certificate/abcdefg");
 NetworkLoadBalancedEc2Service loadBalancedEcsService = NetworkLoadBalancedEc2Service.Builder.create(this, "Service")
         .cluster(cluster)
         .memoryLimitMiB(1024)
         // The default value of listenerPort is 443 if you pass in listenerCertificate
         // It is configured to port 4443 here
         .listenerPort(4443)
         .listenerCertificate(certificate)
         .taskImageOptions(NetworkLoadBalancedTaskImageOptions.builder()
                 .image(ContainerImage.fromRegistry("test"))
                 // The default value of containerPort is 443 if you pass in listenerCertificate
                 // It is configured to port 8443 here
                 .containerPort(8443)
                 .environment(Map.of(
                         "TEST_ENVIRONMENT_VARIABLE1", "test environment variable 1 value",
                         "TEST_ENVIRONMENT_VARIABLE2", "test environment variable 2 value"))
                 .build())
         .desiredCount(2)
         .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

    • getContainerPort

      @Stability(Stable) @Nullable default Number getContainerPort()
      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.

      Default: 80 or 443 with listenerCertificate provided

    • 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 secret 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 NetworkLoadBalancedTaskImageOptions.Builder builder()
      Returns:
      a NetworkLoadBalancedTaskImageOptions.Builder of NetworkLoadBalancedTaskImageOptions