ECS / Client / submit_container_state_change
submit_container_state_change#
- ECS.Client.submit_container_state_change(**kwargs)#
- Note - This action is only used by the Amazon ECS agent, and it is not intended for use outside of the agent. - Sent to acknowledge that a container changed states. - See also: AWS API Documentation - Request Syntax - response = client.submit_container_state_change( cluster='string', task='string', containerName='string', runtimeId='string', status='string', exitCode=123, reason='string', networkBindings=[ { 'bindIP': 'string', 'containerPort': 123, 'hostPort': 123, 'protocol': 'tcp'|'udp', 'containerPortRange': 'string', 'hostPortRange': 'string' }, ] ) - Parameters:
- cluster (string) – The short name or full ARN of the cluster that hosts the container. 
- task (string) – The task ID or full Amazon Resource Name (ARN) of the task that hosts the container. 
- containerName (string) – The name of the container. 
- runtimeId (string) – The ID of the Docker container. 
- status (string) – The status of the state change request. 
- exitCode (integer) – The exit code that’s returned for the state change request. 
- reason (string) – The reason for the state change request. 
- networkBindings (list) – - The network bindings of the container. - (dict) – - Details on the network bindings between a container and its host container instance. After a task reaches the - RUNNINGstatus, manual and automatic host and container port assignments are visible in the- networkBindingssection of DescribeTasks API responses.- bindIP (string) – - The IP address that the container is bound to on the container instance. 
- containerPort (integer) – - The port number on the container that’s used with the network binding. 
- hostPort (integer) – - The port number on the host that’s used with the network binding. 
- protocol (string) – - The protocol used for the network binding. 
- containerPortRange (string) – - The port number range on the container that’s bound to the dynamically mapped host port range. - The following rules apply when you specify a - containerPortRange:- You must use either the - bridgenetwork mode or the- awsvpcnetwork mode.
- This parameter is available for both the EC2 and Fargate launch types. 
- This parameter is available for both the Linux and Windows operating systems. 
- The container instance must have at least version 1.67.0 of the container agent and at least version 1.67.0-1 of the - ecs-initpackage
- You can specify a maximum of 100 port ranges per container. 
- You do not specify a - hostPortRange. The value of the- hostPortRangeis set as follows:- For containers in a task with the - awsvpcnetwork mode, the- hostPortis set to the same value as the- containerPort. This is a static mapping strategy.
- For containers in a task with the - bridgenetwork mode, the Amazon ECS agent finds open host ports from the default ephemeral range and passes it to docker to bind them to the container ports.
 
- The - containerPortRangevalid values are between 1 and 65535.
- A port can only be included in one port mapping per container. 
- You cannot specify overlapping port ranges. 
- The first port in the range must be less than last port in the range. 
- Docker recommends that you turn off the docker-proxy in the Docker daemon config file when you have a large number of ports. For more information, see Issue #11185 on the Github website. For information about how to turn off the docker-proxy in the Docker daemon config file, see Docker daemon in the Amazon ECS Developer Guide . 
 - You can call DescribeTasks to view the - hostPortRangewhich are the host ports that are bound to the container ports.
- hostPortRange (string) – - The port number range on the host that’s used with the network binding. This is assigned is assigned by Docker and delivered by the Amazon ECS agent. 
 
 
 
- Return type:
- dict 
- Returns:
- Response Syntax - { 'acknowledgment': 'string' } - Response Structure - (dict) – - acknowledgment (string) – - Acknowledgement of the state change. 
 
 
 - Exceptions - ECS.Client.exceptions.ServerException
- ECS.Client.exceptions.ClientException
- ECS.Client.exceptions.AccessDeniedException