You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/container-definition/README.md
+8-6Lines changed: 8 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -167,28 +167,30 @@ No modules.
167
167
| <aname="input_interactive"></a> [interactive](#input\_interactive)| When this parameter is `true`, you can deploy containerized applications that require `stdin` or a `tty` to be allocated |`bool`|`false`| no |
168
168
| <aname="input_links"></a> [links](#input\_links)| The links parameter allows containers to communicate with each other without the need for port mappings. This parameter is only supported if the network mode of a task definition is `bridge`|`list(string)`|`null`| no |
169
169
| <a name="input_linuxParameters"></a> [linuxParameters](#input\_linuxParameters) | Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more information see [KernelCapabilities](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_KernelCapabilities.html) | <pre>object({<br/> capabilities = optional(object({<br/> add = optional(list(string))<br/> drop = optional(list(string))<br/> }))<br/> devices = optional(list(object({<br/> containerPath = optional(string)<br/> hostPath = optional(string)<br/> permissions = optional(list(string))<br/> })))<br/> initProcessEnabled = optional(bool, false)<br/> maxSwap = optional(number)<br/> sharedMemorySize = optional(number)<br/> swappiness = optional(number)<br/> tmpfs = optional(list(object({<br/> containerPath = string<br/> mountOptions = optional(list(string))<br/> size = number<br/> })))<br/> })</pre> | <pre>{<br/> "initProcessEnabled": false<br/>}</pre> | no |
170
-
| <aname="input_logConfiguration"></a> [logConfiguration](#input\_logConfiguration)| The log configuration for the container. For more information see [LogConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html)|`any`|`{}`| no |
170
+
| <aname="input_logConfiguration"></a> [logConfiguration](#input\_logConfiguration)| The log configuration for the container. For more information see [LogConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html)|<pre>object({<br/> logDriver = optional(string)<br/> options = optional(map(string))<br/> secretOptions = optional(list(object({<br/> name = string<br/> valueFrom = string<br/> })))<br/> })</pre>|`{}`| no |
171
171
| <aname="input_memory"></a> [memory](#input\_memory)| The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. The total amount of memory reserved for all containers within a task must be lower than the task `memory` value, if one is specified |`number`|`null`| no |
172
172
| <aname="input_memoryReservation"></a> [memoryReservation](#input\_memoryReservation)| The soft limit (in MiB) of memory to reserve for the container. When system memory is under heavy contention, Docker attempts to keep the container memory to this soft limit. However, your container can consume more memory when it needs to, up to either the hard limit specified with the `memory` parameter (if applicable), or all of the available memory on the container instance |`number`|`null`| no |
173
-
| <aname="input_mountPoints"></a> [mountPoints](#input\_mountPoints)| The mount points for data volumes in your container |`list(any)`|`null`| no |
173
+
| <aname="input_mountPoints"></a> [mountPoints](#input\_mountPoints)| The mount points for data volumes in your container |<pre>list(object({<br/> containerPath = optional(string)<br/> readOnly = optional(bool)<br/> sourceVolume = optional(string)<br/> }))</pre>|`null`| no |
174
174
| <aname="input_name"></a> [name](#input\_name)| The name of a container. If you're linking multiple containers together in a task definition, the name of one container can be entered in the links of another container to connect the containers. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed |`string`|`null`| no |
175
175
| <aname="input_operating_system_family"></a> [operating\_system\_family](#input\_operating\_system\_family)| The OS family for task |`string`|`"LINUX"`| no |
176
-
| <aname="input_portMappings"></a> [portMappings](#input\_portMappings)| The list of port mappings for the container. Port mappings allow containers to access ports on the host container instance to send or receive traffic. For task definitions that use the awsvpc network mode, only specify the containerPort. The hostPort can be left blank or it must be the same value as the containerPort | <pre>list(object({<br/> appProtocol = optional(string)<br/> containerPort = number<br/> hostPort = optional(number)<br/> name = string<br/> protocol = optional(string)<br/> }))</pre> |`null`| no |
176
+
| <aname="input_portMappings"></a> [portMappings](#input\_portMappings)| The list of port mappings for the container. Port mappings allow containers to access ports on the host container instance to send or receive traffic. For task definitions that use the awsvpc network mode, only specify the containerPort. The hostPort can be left blank or it must be the same value as the containerPort | <pre>list(object({<br/> appProtocol = optional(string)<br/> containerPort = optional(number)<br/> containerPortRange = optional(string)<br/> hostPort = optional(number)<br/> name = optional(string)<br/> protocol = optional(string)<br/> }))</pre> |`null`| no |
177
177
| <aname="input_privileged"></a> [privileged](#input\_privileged)| When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user) |`bool`|`false`| no |
178
178
| <aname="input_pseudoTerminal"></a> [pseudoTerminal](#input\_pseudoTerminal)| When this parameter is true, a `TTY` is allocated |`bool`|`false`| no |
179
179
| <aname="input_readonlyRootFilesystem"></a> [readonlyRootFilesystem](#input\_readonlyRootFilesystem)| When this parameter is true, the container is given read-only access to its root file system |`bool`|`true`| no |
180
-
| <aname="input_repositoryCredentials"></a> [repositoryCredentials](#input\_repositoryCredentials)| Container repository credentials; required when using a private repo. This map currently supports a single key; "credentialsParameter", which should be the ARN of a Secrets Manager's secret holding the credentials |`map(string)`|`null`| no |
180
+
| <aname="input_region"></a> [region](#input\_region)| Region where the resource(s) will be managed. Defaults to the Region set in the provider configuration |`string`|`null`| no |
181
+
| <aname="input_repositoryCredentials"></a> [repositoryCredentials](#input\_repositoryCredentials)| Container repository credentials; required when using a private repo. This map currently supports a single key; "credentialsParameter", which should be the ARN of a Secrets Manager's secret holding the credentials | <pre>object({<br/> credentialsParameter = optional(string)<br/> })</pre> |`null`| no |
181
182
| <aname="input_resourceRequirements"></a> [resourceRequirements](#input\_resourceRequirements)| The type and amount of a resource to assign to a container. The only supported resource is a GPU | <pre>list(object({<br/> type = string<br/> value = string<br/> }))</pre> |`null`| no |
| <aname="input_secrets"></a> [secrets](#input\_secrets)| The secrets to pass to the container. For more information, see [Specifying Sensitive Data](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html) in the Amazon Elastic Container Service Developer Guide | <pre>list(object({<br/> name = string<br/> valueFrom = string<br/> }))</pre> |`null`| no |
184
185
| <aname="input_service"></a> [service](#input\_service)| The name of the service that the container definition is associated with |`string`|`""`| no |
185
186
| <aname="input_startTimeout"></a> [startTimeout](#input\_startTimeout)| Time duration (in seconds) to wait before giving up on resolving dependencies for a container |`number`|`30`| no |
186
187
| <aname="input_stopTimeout"></a> [stopTimeout](#input\_stopTimeout)| Time duration (in seconds) to wait before the container is forcefully killed if it doesn't exit normally on its own |`number`|`120`| no |
187
-
| <aname="input_systemControls"></a> [systemControls](#input\_systemControls)| A list of namespaced kernel parameters to set in the container |`list(map(string))`|`null`| no |
188
+
| <aname="input_systemControls"></a> [systemControls](#input\_systemControls)| A list of namespaced kernel parameters to set in the container |<pre>list(object({<br/> namespace = optional(string)<br/> value = optional(string)<br/> }))</pre>|`null`| no |
188
189
| <aname="input_tags"></a> [tags](#input\_tags)| A map of tags to add to all resources |`map(string)`|`{}`| no |
189
190
| <aname="input_ulimits"></a> [ulimits](#input\_ulimits)| A list of ulimits to set in the container. If a ulimit value is specified in a task definition, it overrides the default values set by Docker | <pre>list(object({<br/> hardLimit = number<br/> name = string<br/> softLimit = number<br/> }))</pre> |`null`| no |
190
191
| <aname="input_user"></a> [user](#input\_user)| The user to run as inside the container. Can be any of these formats: user, user:group, uid, uid:gid, user:gid, uid:group. The default (null) will use the container's configured `USER` directive or root if not set |`string`|`null`| no |
191
-
| <aname="input_volumesFrom"></a> [volumesFrom](#input\_volumesFrom)| Data volumes to mount from another container | <pre>list(object({<br/> readOnly = bool<br/> sourceContainer = string<br/> }))</pre> |`null`| no |
192
+
| <aname="input_versionConsistency"></a> [versionConsistency](#input\_versionConsistency)| Specifies whether Amazon ECS will resolve the container image tag provided in the container definition to an image digest |`string`|`"disabled"`| no |
193
+
| <aname="input_volumesFrom"></a> [volumesFrom](#input\_volumesFrom)| Data volumes to mount from another container | <pre>list(object({<br/> readOnly = optional(bool)<br/> sourceContainer = optional(string)<br/> }))</pre> |`null`| no |
192
194
| <aname="input_workingDirectory"></a> [workingDirectory](#input\_workingDirectory)| The working directory to run commands inside the container |`string`|`null`| no |
description="The log configuration for the container. For more information see [LogConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html)"
description="The mount points for data volumes in your container"
207
-
type=list(any)
208
-
default=null
218
+
type=list(object({
219
+
containerPath =optional(string)
220
+
readOnly =optional(bool)
221
+
sourceVolume =optional(string)
222
+
}))
223
+
default=null
209
224
}
210
225
211
226
variable"name" {
@@ -217,11 +232,12 @@ variable "name" {
217
232
variable"portMappings" {
218
233
description="The list of port mappings for the container. Port mappings allow containers to access ports on the host container instance to send or receive traffic. For task definitions that use the awsvpc network mode, only specify the containerPort. The hostPort can be left blank or it must be the same value as the containerPort"
description="Container repository credentials; required when using a private repo. This map currently supports a single key; \"credentialsParameter\", which should be the ARN of a Secrets Manager's secret holding the credentials"
249
-
type=map(string)
250
-
default=null
265
+
type=object({
266
+
credentialsParameter =optional(string)
267
+
})
268
+
default=null
251
269
}
252
270
253
271
variable"resourceRequirements" {
@@ -294,8 +312,11 @@ variable "stopTimeout" {
294
312
295
313
variable"systemControls" {
296
314
description="A list of namespaced kernel parameters to set in the container"
297
-
type=list(map(string))
298
-
default=null
315
+
type=list(object({
316
+
namespace =optional(string)
317
+
value =optional(string)
318
+
}))
319
+
default=null
299
320
}
300
321
301
322
variable"ulimits" {
@@ -314,11 +335,17 @@ variable "user" {
314
335
default=null
315
336
}
316
337
338
+
variable"versionConsistency" {
339
+
description="Specifies whether Amazon ECS will resolve the container image tag provided in the container definition to an image digest"
340
+
type=string
341
+
default="disabled"
342
+
}
343
+
317
344
variable"volumesFrom" {
318
345
description="Data volumes to mount from another container"
0 commit comments