AWS CloudFormation
User Guide (API 版本 2010-05-15)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

Amazon Elastic Container Service TaskDefinition ContainerDefinition

ContainerDefinition 属性类型描述了 Amazon Elastic Container Service (Amazon ECS) 容器的配置。容器定义将传递给 Docker 守护程序。

AWS::ECS::TaskDefinition 资源的 ContainerDefinitions 属性包含一个 ContainerDefinition 属性类型列表。

语法

JSON

{ "Command" : [ String, ... ], "Cpu" : Integer, "DisableNetworking" : Boolean, "DnsSearchDomains" : [ String, ... ], "DnsServers" : [ String, ... ], "DockerLabels" : { 字符串字符串, ... }, "DockerSecurityOptions" : [ String, ... ], "EntryPoint" : [ String, ... ], "Environment" : [ KeyValuePair, ... ], "Essential" : Boolean, "ExtraHosts" : [ HostEntry, ... ], "Hostname" : String, "Image" : String, "Links" : [ String, ... ], "LinuxParameters" : LinuxParameters, "LogConfiguration" : LogConfiguration, "Memory" : Integer, "MemoryReservation" : Integer, "MountPoints" : [ MountPoint, ... ], "Name" : String, "PortMappings" : [ PortMapping, ... ], "Privileged" : Boolean, "ReadonlyRootFilesystem" : Boolean, "Ulimits" : [ Ulimit, ... ], "User" : String, "VolumesFrom" : [ VolumeFrom, ... ], "WorkingDirectory" : String }

YAML

Command: - 字符串 Cpu: Integer DisableNetworking: Boolean DnsSearchDomains: - 字符串 DnsServers: - 字符串 DockerLabels: 字符串字符串 DockerSecurityOptions: - 字符串 EntryPoint: - 字符串 Environment: - KeyValuePair Essential: Boolean ExtraHosts: - HostEntry Hostname: String Image: String Links: - 字符串 LinuxParameters: LinuxParameters LogConfiguration: LogConfiguration Memory: Integer MemoryReservation: Integer MountPoints: - MountPoint Name: String PortMappings: - PortMapping Privileged: Boolean ReadonlyRootFilesystem: Boolean Ulimits: - Ulimit User: String VolumesFrom: - VolumeFrom WorkingDirectory: String

属性

有关每个属性的更多信息,请参阅 Amazon Elastic Container Service Developer Guide 中的任务定义参数

Command

要传递到容器的 CMD 值。有关 Docker CMD 参数的更多信息,请参阅 https://docs.docker.com/engine/reference/builder/#cmd

Required: No

Type: List of String values

Cpu

要为容器预留的最低数量的 CPU 单位。容器与实例上的其他容器共享未分配的 CPU 单位,方法是使用与前者分配到的 CPU 单位相同的比率。有关更多信息,请参阅 Amazon Elastic Container Service API Reference 中的 ContainerDefinition 数据类型的 cpu 内容。

Required: No

Type: Integer

DisableNetworking

指示是否在容器中禁用网络。

Required: No

Type: Boolean

DnsSearchDomains

提供给容器的 DNS 搜索域的列表。在流程尝试访问未限定的主机名时 DNS 逻辑查找的域名。

Required: No

Type: List of String values

DnsServers

Amazon ECS 提供给容器的 DNS 服务器的列表。

Required: No

Type: List of String values

DockerLabels

容器标签的键值映射。

Required: No

类型:键/值对,其中标签名称用作键,标签值用作值。

DockerSecurityOptions

SELinux 和 AppArmor 多级别安全系统的自定义标签的列表。有关更多信息,请参阅 Amazon Elastic Container Service API Reference 中的 ContainerDefinition 数据类型的 dockerSecurityOptions 内容。

Required: No

Type: List of String values

EntryPoint

要传递到容器的 ENTRYPOINT 值。有关 Docker ENTRYPOINT 参数的更多信息,请参阅 https://docs.docker.com/engine/reference/builder/#entrypoint

Required: No

Type: List of String values

Environment

要传递到容器的环境变量。

Required: No

类型Amazon ECS TaskDefinition KeyValuePair 属性类型的列表

Essential

指示任务在此容器出现故障时是否停止。如果您指定了 true,并且容器出现故障,则任务中的所有其他容器都将停止。如果您指定了 false,并且容器出现故障,则任务中的所有其他容器都不会受到影响。默认情况下,此值为 true

您在一个任务中必须至少有一个主要容器。

Required: No

Type: Boolean

ExtraHosts

要追加到容器上的 /etc/hosts 文件的主机名和 IP 地址映射的列表。

Required: No

Type: Amazon ECS TaskDefinition HostEntry 属性类型的列表

Hostname

Docker 将用于容器主机名的名称。

Required: No

Type: String

Image

要用于容器的镜像。镜像将直接传递给 Docker 守护程序。您可以在 Docker Hub 注册表中使用映像,也可以指定其他存储库 (repository-url/image:tag)。

必需:是

Type: String

Links

要连接到的其他容器的名称。利用链接,容器无需使用端口映射也可以互相通信。

Required: No

Type: List of String values

LinuxParameters

适用于容器的特定于 Linux 的选项。

必需:否

类型Amazon ECS TaskDefinition LinuxParameters

LogConfiguration

配置容器的自定义日志驱动程序。有关更多信息,请参阅 Amazon Elastic Container Service API Reference 中的 ContainerDefinition 数据类型的 logConfiguration 内容。

Required: No

Type: Amazon ECS TaskDefinition LogConfiguration

Memory

要为容器预留的 MiB 内存数。如果您的容器尝试超出分配的内存,该容器将会终止。

Required: Conditional。你必须至少指定 MemoryMemoryReservation 属性中的一个。如果您指定两个,则 Memory 属性的值必须大于 MemoryReservation 属性的值。

Type: Integer

MemoryReservation

要为容器预留的 MiB 内存数。当系统内存处于争用状态时,Docker 会尝试将容器内存保持在限制范围内。如果容器需要更多内存,则它最多可以消耗由 Memory 属性指定的值,或者容器实例中的全部可用内存 — 以较低者为准。这称为软限制。

Required: Conditional。你必须至少指定 MemoryMemoryReservation 属性中的一个。如果您指定两个,则 Memory 属性的值必须大于 MemoryReservation 属性的值。

Type: Integer

MountPoints

容器中的数据卷的挂载点。

Required: No

类型Amazon ECS TaskDefinition MountPoint 属性类型的列表

Name

容器的名称。

必需:是

Type: String

PortMappings

容器端口到主机端口的映射。端口映射可让容器访问主机容器实例上的端口以发送或接收数据流。

Required: No

类型Amazon ECS TaskDefinition ContainerDefinitions PortMapping 属性类型的列表

Privileged

指示是否向容器提供对主机容器实例的完全访问权。

Required: No

Type: Boolean

ReadonlyRootFilesystem

指示容器的根文件系统是否以只读形式装载。

Required: No

Type: Boolean

Ulimits

要在容器中设置的 ulimit 的列表。ulimits 设置有关容器可使用的资源量的限制,以防止耗尽主机上的所有可用资源。

Required: No

Type: Amazon ECS TaskDefinition Ulimit 属性类型的列表

User

要在容器内使用的用户名。

Required: No

Type: String

VolumesFrom

要从其他容器挂载的数据卷。

Required: No

类型Amazon ECS TaskDefinition VolumeFrom 属性类型的列表

WorkingDirectory

在其中运行命令的容器中的工作目录。

Required: No

Type: String

另请参阅

本页内容: