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
description="(Optional) The amount of memory (in MiB) to allow the container to use. This is a hard limit, if the container attempts to exceed the container_memory, the container is killed. This field is optional for Fargate launch type and the total amount of container_memory of all containers in a task will need to be lower than the task memory value"
description="(Optional) The amount of memory (in MiB) to reserve for the container. If container needs to exceed this threshold, it can do so up to the set container_memory hard limit"
30
32
default=2048# 2 GB
31
33
}
32
34
35
+
variable"container_definition" {
36
+
type=map
37
+
description="Container definition overrides which allows for extra keys or overriding existing keys."
38
+
default={}
39
+
}
40
+
33
41
variable"port_mappings" {
34
42
description="The port mappings to configure for the container. This is a list of maps. Each map should contain \"containerPort\", \"hostPort\", and \"protocol\", where \"protocol\" is one of \"tcp\" or \"udp\". If using containers in a task with the awsvpc or host network mode, the hostPort can either be left blank or set to the same value as the containerPort"
description="(Optional) The number of cpu units to reserve for the container. This is optional for tasks using Fargate launch type and the total amount of container_cpu of all containers in a task will need to be lower than the task-level cpu value"
65
74
default=1024# 1 vCPU
66
75
}
67
76
68
77
variable"essential" {
69
-
description="(Optional) Determines whether all other containers in a task are stopped, if this container fails or stops for any reason. Due to how Terraform type casts booleans in json it is required to double quote this value"
70
78
type=bool
79
+
description="Determines whether all other containers in a task are stopped, if this container fails or stops for any reason. Due to how Terraform type casts booleans in json it is required to double quote this value"
71
80
default=true
72
81
}
73
82
74
83
variable"entrypoint" {
75
-
description="(Optional) The entry point that is passed to the container"
76
84
type=list(string)
85
+
description="The entry point that is passed to the container"
77
86
default=null
78
87
}
79
88
80
89
variable"command" {
81
-
description="(Optional) The command that is passed to the container"
82
90
type=list(string)
91
+
description="The command that is passed to the container"
83
92
default=null
84
93
}
85
94
86
95
variable"working_directory" {
87
-
description="(Optional) The working directory to run commands inside the container"
88
96
type=string
97
+
description="The working directory to run commands inside the container"
89
98
default=null
90
99
}
91
100
92
101
variable"environment" {
93
-
description="(Optional) The environment variables to pass to the container. This is a list of maps"
94
102
type=list(object({
95
103
name =string
96
104
value =string
97
105
}))
98
-
default=[]
106
+
description="The environment variables to pass to the container. This is a list of maps. map_environment overrides environment"
107
+
default=[]
108
+
}
109
+
110
+
variable"extra_hosts" {
111
+
type=list(object({
112
+
ipAddress =string
113
+
hostname =string
114
+
}))
115
+
description="A list of hostnames and IP address mappings to append to the /etc/hosts file on the container. This is a list of maps"
116
+
default=null
117
+
}
118
+
119
+
variable"map_environment" {
120
+
type=map(string)
121
+
description="The environment variables to pass to the container. This is a map of string: {key: value}. map_environment overrides environment"
description="One or more files containing the environment variables to pass to the container. This maps to the --env-file option to docker run. The file must be hosted in Amazon S3. This option is only available to tasks using the EC2 launch type. This is a list of maps"
132
+
default=null
99
133
}
100
134
101
135
variable"secrets" {
102
-
description="(Optional) The secrets to pass to the container. This is a list of maps"
103
136
type=list(object({
104
137
name =string
105
138
valueFrom =string
106
139
}))
107
-
default=null
140
+
description="The secrets to pass to the container. This is a list of maps"
141
+
default=null
108
142
}
109
143
110
144
variable"readonly_root_filesystem" {
111
-
description="(Optional) Determines whether a container is given read-only access to its root filesystem. Due to how Terraform type casts booleans in json it is required to double quote this value"
112
145
type=bool
146
+
description="Determines whether a container is given read-only access to its root filesystem. Due to how Terraform type casts booleans in json it is required to double quote this value"
description="Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more details, see https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LinuxParameters.html"
description="Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more details, see https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LinuxParameters.html"
description="(Optional) Log configuration options to send to a custom log driver for the container. For more details, see https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html"
146
-
type=object({
147
-
logDriver =string
148
-
options =map(string)
149
-
secretOptions =list(object({
150
-
name =string
151
-
valueFrom =string
152
-
}))
153
-
})
154
-
default=null
178
+
type=any
179
+
description="Log configuration options to send to a custom log driver for the container. For more details, see https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html"
description="(Optional) The FireLens configuration for the container. This is used to specify and configure a log router for container logs. For more details, see https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_FirelensConfiguration.html"
160
185
type=object({
161
186
type =string
162
187
options =map(string)
163
188
})
164
-
default=null
189
+
description="The FireLens configuration for the container. This is used to specify and configure a log router for container logs. For more details, see https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_FirelensConfiguration.html"
190
+
default=null
165
191
}
166
192
167
193
variable"mount_points" {
168
-
description="(Optional) Container mount points. This is a list of maps, where each map should contain a `containerPath` and `sourceVolume`"
169
-
type=list(object({
170
-
containerPath =string
171
-
sourceVolume =string
172
-
}))
173
-
default=[]
194
+
type=list
195
+
196
+
description="Container mount points. This is a list of maps, where each map should contain a `containerPath` and `sourceVolume`. The `readOnly` key is optional."
197
+
default=[]
174
198
}
175
199
176
200
variable"dns_servers" {
177
201
type=list(string)
178
-
description="(Optional) Container DNS servers. This is a list of strings specifying the IP addresses of the DNS servers"
202
+
description="Container DNS servers. This is a list of strings specifying the IP addresses of the DNS servers"
203
+
default=null
204
+
}
205
+
206
+
variable"dns_search_domains" {
207
+
type=list(string)
208
+
description="Container DNS search domains. A list of DNS search domains that are presented to the container"
179
209
default=null
180
210
}
181
211
182
212
variable"ulimits" {
183
-
description="(Optional) Container ulimit settings. This is a list of maps, where each map should contain \"name\", \"hardLimit\" and \"softLimit\""
184
213
type=list(object({
185
214
name =string
186
215
hardLimit =number
187
216
softLimit =number
188
217
}))
189
-
default=null
218
+
description="Container ulimit settings. This is a list of maps, where each map should contain \"name\", \"hardLimit\" and \"softLimit\""
219
+
default=null
190
220
}
191
221
192
222
variable"repository_credentials" {
193
-
description="(Optional) 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"
194
223
type=map(string)
224
+
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"
195
225
default=null
196
226
}
197
227
198
228
variable"volumes_from" {
199
-
description="(Optional) A list of VolumesFrom maps which contain \"sourceContainer\" (name of the container that has the volumes to mount) and \"readOnly\" (whether the container can write to the volume)"
200
229
type=list(object({
201
230
sourceContainer =string
202
231
readOnly =bool
203
232
}))
204
-
default=null
233
+
description="A list of VolumesFrom maps which contain \"sourceContainer\" (name of the container that has the volumes to mount) and \"readOnly\" (whether the container can write to the volume)"
234
+
default=[]
205
235
}
206
236
207
237
variable"links" {
208
-
description="(Optional) List of container names this container can communicate with without port mappings"
209
238
type=list(string)
239
+
description="List of container names this container can communicate with without port mappings"
210
240
default=null
211
241
}
212
242
213
243
variable"user" {
214
-
description="(Optional) The user to run as inside the container. Can be any of these formats: user, user:group, uid, uid:gid, user:gid, uid:group"
215
244
type=string
245
+
description="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."
216
246
default=null
217
247
}
218
248
219
249
variable"container_depends_on" {
220
-
description="(Optional) The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed"
221
250
type=list(object({
222
251
containerName =string
223
252
condition =string
224
253
}))
225
-
default=null
254
+
description="The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed. The condition can be one of START, COMPLETE, SUCCESS or HEALTHY"
255
+
default=null
226
256
}
227
257
228
258
variable"docker_labels" {
229
-
description="(Optional) The configuration options to send to the `docker_labels`"
230
259
type=map(string)
260
+
description="The configuration options to send to the `docker_labels`"
231
261
default=null
232
262
}
233
263
234
264
variable"start_timeout" {
235
-
description="(Optional) Time duration (in seconds) to wait before giving up on resolving dependencies for a container."
236
-
default=30
265
+
type=number
266
+
description="Time duration (in seconds) to wait before giving up on resolving dependencies for a container"
267
+
default=null
237
268
}
238
269
239
270
variable"stop_timeout" {
240
-
description="(Optional) Timeout in seconds between sending SIGTERM and SIGKILL to container"
241
271
type=number
242
-
default=30
272
+
description="Time duration (in seconds) to wait before the container is forcefully killed if it doesn't exit normally on its own"
273
+
default=null
274
+
}
275
+
276
+
variable"privileged" {
277
+
type=bool
278
+
description="When this variable is `true`, the container is given elevated privileges on the host container instance (similar to the root user). This parameter is not supported for Windows containers or tasks using the Fargate launch type."
279
+
default=null
243
280
}
244
281
245
282
variable"system_controls" {
246
-
description="(Optional) A list of namespaced kernel parameters to set in the container, mapping to the --sysctl option to docker run. This is a list of maps: { namespace = \"\", value = \"\"}"
247
283
type=list(map(string))
284
+
description="A list of namespaced kernel parameters to set in the container, mapping to the --sysctl option to docker run. This is a list of maps: { namespace = \"\", value = \"\"}"
285
+
default=null
286
+
}
287
+
288
+
variable"hostname" {
289
+
type=string
290
+
description="The hostname to use for your container."
291
+
default=null
292
+
}
293
+
294
+
variable"disable_networking" {
295
+
type=bool
296
+
description="When this parameter is true, networking is disabled within the container."
297
+
default=null
298
+
}
299
+
300
+
variable"interactive" {
301
+
type=bool
302
+
description="When this parameter is true, this allows you to deploy containerized applications that require stdin or a tty to be allocated."
303
+
default=null
304
+
}
305
+
306
+
variable"pseudo_terminal" {
307
+
type=bool
308
+
description="When this parameter is true, a TTY is allocated. "
309
+
default=null
310
+
}
311
+
312
+
variable"docker_security_options" {
313
+
type=list(string)
314
+
description="A list of strings to provide custom labels for SELinux and AppArmor multi-level security systems."
0 commit comments