SupportContainerDefinitionInput - Amazon GameLift

SupportContainerDefinitionInput

Describes a support container in a container group. You can define a support container in either a game server container group or a per-instance container group. Support containers don't run game server processes.

This definition includes container configuration, resources, and start instructions. Use this data type when creating or updating a container group definition. For properties of a deployed support container, see SupportContainerDefinition.

Use with: CreateContainerGroupDefinition, UpdateContainerGroupDefinition

Contents

Note

In the following list, the required parameters are described first.

ContainerName

A string that uniquely identifies the container definition within a container group.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^[a-zA-Z0-9\-]+$

Required: Yes

ImageUri

The location of the container image to deploy to a container fleet. Provide an image in an Amazon Elastic Container Registry public or private repository. The repository must be in the same AWS account and AWS Region where you're creating the container group definition. For limits on image size, see Amazon GameLift endpoints and quotas. You can use any of the following image URI formats:

  • Image ID only: [AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]

  • Image ID and digest: [AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]@[digest]

  • Image ID and tag: [AWS account].dkr.ecr.[AWS region].amazonaws.com/[repository ID]:[tag]

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

Pattern: ^[a-zA-Z0-9-_\.@\/:]+$

Required: Yes

DependsOn

Establishes dependencies between this container and the status of other containers in the same container group. A container can have dependencies on multiple different containers.

.

You can use dependencies to establish a startup/shutdown sequence across the container group. For example, you might specify that ContainerB has a START dependency on ContainerA. This dependency means that ContainerB can't start until after ContainerA has started. This dependency is reversed on shutdown, which means that ContainerB must shut down before ContainerA can shut down.

Type: Array of ContainerDependency objects

Array Members: Minimum number of 1 item. Maximum number of 10 items.

Required: No

EnvironmentOverride

A set of environment variables to pass to the container on startup. See the ContainerDefinition::environment parameter in the Amazon Elastic Container Service API Reference.

Type: Array of ContainerEnvironment objects

Array Members: Minimum number of 1 item. Maximum number of 20 items.

Required: No

Essential

Flags the container as vital for the container group to function properly. If an essential container fails, the entire container group restarts. At least one support container in a per-instance container group must be essential. When flagging a container as essential, also configure a health check so that the container can signal that it's healthy.

Type: Boolean

Required: No

HealthCheck

Configuration for a non-terminal health check. A container automatically restarts if it stops functioning. With a health check, you can define additional reasons to flag a container as unhealthy and restart it. If an essential container fails a health check, the entire container group restarts.

Type: ContainerHealthCheck object

Required: No

MemoryHardLimitMebibytes

A specified amount of memory (in MiB) to reserve for this container. If you don't specify a container-specific memory limit, the container shares the container group's total memory allocation.

Related data type: ContainerGroupDefinitionTotalMemoryLimitMebibytes

Type: Integer

Valid Range: Minimum value of 4. Maximum value of 1024000.

Required: No

MountPoints

A mount point that binds a path inside the container to a file or directory on the host system and lets it access the file or directory.

Type: Array of ContainerMountPoint objects

Array Members: Minimum number of 1 item. Maximum number of 10 items.

Required: No

PortConfiguration

A set of ports that Amazon GameLift can assign to processes in the container. Any processes that accept inbound traffic connections must be assigned a port from this set. The container port range must be large enough to assign one to each process in the container that needs one.

Container ports aren't directly accessed by inbound traffic. Amazon GameLift maps these container ports to externally accessible connection ports, which are assigned as needed from the container fleet's ConnectionPortRange.

Type: ContainerPortConfiguration object

Required: No

Vcpu

The number of vCPU units to reserve for this container. The container can use more resources when needed, if available. If you don't reserve CPU units for this container, it shares the container group's total vCPU limit.

Related data type: ContainerGroupDefinition TotalCpuLimit

Type: Double

Valid Range: Minimum value of 0.125. Maximum value of 10.

Required: No

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: