aws-sdk-ecs 1.152.0 → 1.153.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -237,7 +237,7 @@ module Aws::ECS
237
237
 
238
238
  # An object representing the networking details for a task or service.
239
239
  # For example
240
- # `awsvpcConfiguration=\{subnets=["subnet-12344321"],securityGroups=["sg-12344321"]\}`
240
+ # `awsVpcConfiguration=\{subnets=["subnet-12344321"],securityGroups=["sg-12344321"]\}`.
241
241
  #
242
242
  # @!attribute [rw] subnets
243
243
  # The IDs of the subnets associated with the task or service. There's
@@ -456,6 +456,19 @@ module Aws::ECS
456
456
  # have permissions to use the action or resource. Or, it might be
457
457
  # specifying an identifier that isn't valid.
458
458
  #
459
+ # The following list includes additional causes for the error:
460
+ #
461
+ # * The `RunTask` could not be processed because you use managed scaling
462
+ # and there is a capacity error because the quota of tasks in the
463
+ # `PROVISIONING` per cluster has been reached. For information about
464
+ # the service quotas, see [Amazon ECS service quotas][1].
465
+ #
466
+ # ^
467
+ #
468
+ #
469
+ #
470
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-quotas.html
471
+ #
459
472
  # @!attribute [rw] message
460
473
  # Message that describes the cause of the exception.
461
474
  # @return [String]
@@ -991,14 +1004,8 @@ module Aws::ECS
991
1004
  # entered in the `links` of another container to connect the
992
1005
  # containers. Up to 255 letters (uppercase and lowercase), numbers,
993
1006
  # underscores, and hyphens are allowed. This parameter maps to `name`
994
- # in the [Create a container][1] section of the [Docker Remote API][2]
995
- # and the `--name` option to [docker run][3].
996
- #
997
- #
998
- #
999
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1000
- # [2]: https://docs.docker.com/engine/api/v1.35/
1001
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1007
+ # in tthe docker create-container command and the `--name` option to
1008
+ # docker run.
1002
1009
  # @return [String]
1003
1010
  #
1004
1011
  # @!attribute [rw] image
@@ -1008,9 +1015,8 @@ module Aws::ECS
1008
1015
  # repository-url/image:tag ` or ` repository-url/image@digest `. Up to
1009
1016
  # 255 letters (uppercase and lowercase), numbers, hyphens,
1010
1017
  # underscores, colons, periods, forward slashes, and number signs are
1011
- # allowed. This parameter maps to `Image` in the [Create a
1012
- # container][1] section of the [Docker Remote API][2] and the `IMAGE`
1013
- # parameter of [docker run][3].
1018
+ # allowed. This parameter maps to `Image` in the docker
1019
+ # create-container command and the `IMAGE` parameter of docker run.
1014
1020
  #
1015
1021
  # * When a new task starts, the Amazon ECS container agent pulls the
1016
1022
  # latest version of the specified image and tag for the container to
@@ -1032,12 +1038,6 @@ module Aws::ECS
1032
1038
  #
1033
1039
  # * Images in other online repositories are qualified further by a
1034
1040
  # domain name (for example, `quay.io/assemblyline/ubuntu`).
1035
- #
1036
- #
1037
- #
1038
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1039
- # [2]: https://docs.docker.com/engine/api/v1.35/
1040
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1041
1041
  # @return [String]
1042
1042
  #
1043
1043
  # @!attribute [rw] repository_credentials
@@ -1046,9 +1046,8 @@ module Aws::ECS
1046
1046
  #
1047
1047
  # @!attribute [rw] cpu
1048
1048
  # The number of `cpu` units reserved for the container. This parameter
1049
- # maps to `CpuShares` in the [Create a container][1] section of the
1050
- # [Docker Remote API][2] and the `--cpu-shares` option to [docker
1051
- # run][3].
1049
+ # maps to `CpuShares` in the docker create-container commandand the
1050
+ # `--cpu-shares` option to docker run.
1052
1051
  #
1053
1052
  # This field is optional for tasks using the Fargate launch type, and
1054
1053
  # the only requirement is that the total amount of CPU reserved for
@@ -1057,7 +1056,7 @@ module Aws::ECS
1057
1056
  #
1058
1057
  # <note markdown="1"> You can determine the number of CPU units that are available per EC2
1059
1058
  # instance type by multiplying the vCPUs listed for that instance type
1060
- # on the [Amazon EC2 Instances][4] detail page by 1,024.
1059
+ # on the [Amazon EC2 Instances][1] detail page by 1,024.
1061
1060
  #
1062
1061
  # </note>
1063
1062
  #
@@ -1076,13 +1075,13 @@ module Aws::ECS
1076
1075
  #
1077
1076
  # On Linux container instances, the Docker daemon on the container
1078
1077
  # instance uses the CPU value to calculate the relative CPU share
1079
- # ratios for running containers. For more information, see [CPU share
1080
- # constraint][5] in the Docker documentation. The minimum valid CPU
1081
- # share value that the Linux kernel allows is 2. However, the CPU
1082
- # parameter isn't required, and you can use CPU values below 2 in
1083
- # your container definitions. For CPU values below 2 (including null),
1084
- # the behavior varies based on your Amazon ECS container agent
1085
- # version:
1078
+ # ratios for running containers. The minimum valid CPU share value
1079
+ # that the Linux kernel allows is 2, and the maximum valid CPU share
1080
+ # value that the Linux kernel allows is 262144. However, the CPU
1081
+ # parameter isn't required, and you can use CPU values below 2 or
1082
+ # above 262144 in your container definitions. For CPU values below 2
1083
+ # (including null) or above 262144, the behavior varies based on your
1084
+ # Amazon ECS container agent version:
1086
1085
  #
1087
1086
  # * **Agent versions less than or equal to 1.1.0:** Null and zero CPU
1088
1087
  # values are passed to Docker as 0, which Docker then converts to
@@ -1092,6 +1091,10 @@ module Aws::ECS
1092
1091
  # * **Agent versions greater than or equal to 1.2.0:** Null, zero, and
1093
1092
  # CPU values of 1 are passed to Docker as 2.
1094
1093
  #
1094
+ # * **Agent versions greater than or equal to 1.84.0:** CPU values
1095
+ # greater than 256 vCPU are passed to Docker as 256, which is
1096
+ # equivalent to 262144 CPU shares.
1097
+ #
1095
1098
  # On Windows container instances, the CPU limit is enforced as an
1096
1099
  # absolute limit, or a quota. Windows containers only have access to
1097
1100
  # the specified amount of CPU that's described in the task
@@ -1100,11 +1103,7 @@ module Aws::ECS
1100
1103
  #
1101
1104
  #
1102
1105
  #
1103
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1104
- # [2]: https://docs.docker.com/engine/api/v1.35/
1105
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1106
- # [4]: http://aws.amazon.com/ec2/instance-types/
1107
- # [5]: https://docs.docker.com/engine/reference/run/#cpu-share-constraint
1106
+ # [1]: http://aws.amazon.com/ec2/instance-types/
1108
1107
  # @return [Integer]
1109
1108
  #
1110
1109
  # @!attribute [rw] memory
@@ -1112,9 +1111,9 @@ module Aws::ECS
1112
1111
  # container attempts to exceed the memory specified here, the
1113
1112
  # container is killed. The total amount of memory reserved for all
1114
1113
  # containers within a task must be lower than the task `memory` value,
1115
- # if one is specified. This parameter maps to `Memory` in the [Create
1116
- # a container][1] section of the [Docker Remote API][2] and the
1117
- # `--memory` option to [docker run][3].
1114
+ # if one is specified. This parameter maps to `Memory` in thethe
1115
+ # docker create-container command and the `--memory` option to docker
1116
+ # run.
1118
1117
  #
1119
1118
  # If using the Fargate launch type, this parameter is optional.
1120
1119
  #
@@ -1133,12 +1132,6 @@ module Aws::ECS
1133
1132
  # The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB
1134
1133
  # of memory for a container. So, don't specify less than 4 MiB of
1135
1134
  # memory for your containers.
1136
- #
1137
- #
1138
- #
1139
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1140
- # [2]: https://docs.docker.com/engine/api/v1.35/
1141
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1142
1135
  # @return [Integer]
1143
1136
  #
1144
1137
  # @!attribute [rw] memory_reservation
@@ -1148,9 +1141,9 @@ module Aws::ECS
1148
1141
  # consume more memory when it needs to, up to either the hard limit
1149
1142
  # specified with the `memory` parameter (if applicable), or all of the
1150
1143
  # available memory on the container instance, whichever comes first.
1151
- # This parameter maps to `MemoryReservation` in the [Create a
1152
- # container][1] section of the [Docker Remote API][2] and the
1153
- # `--memory-reservation` option to [docker run][3].
1144
+ # This parameter maps to `MemoryReservation` in the the docker
1145
+ # create-container command and the `--memory-reservation` option to
1146
+ # docker run.
1154
1147
  #
1155
1148
  # If a task-level memory value is not specified, you must specify a
1156
1149
  # non-zero integer for one or both of `memory` or `memoryReservation`
@@ -1175,12 +1168,6 @@ module Aws::ECS
1175
1168
  # The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB
1176
1169
  # of memory for a container. So, don't specify less than 4 MiB of
1177
1170
  # memory for your containers.
1178
- #
1179
- #
1180
- #
1181
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1182
- # [2]: https://docs.docker.com/engine/api/v1.35/
1183
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1184
1171
  # @return [Integer]
1185
1172
  #
1186
1173
  # @!attribute [rw] links
@@ -1189,11 +1176,9 @@ module Aws::ECS
1189
1176
  # supported if the network mode of a task definition is `bridge`. The
1190
1177
  # `name:internalName` construct is analogous to `name:alias` in Docker
1191
1178
  # links. Up to 255 letters (uppercase and lowercase), numbers,
1192
- # underscores, and hyphens are allowed. For more information about
1193
- # linking Docker containers, go to [Legacy container links][1] in the
1194
- # Docker documentation. This parameter maps to `Links` in the [Create
1195
- # a container][2] section of the [Docker Remote API][3] and the
1196
- # `--link` option to [docker run][4].
1179
+ # underscores, and hyphens are allowed.. This parameter maps to
1180
+ # `Links` in the docker create-container command and the `--link`
1181
+ # option to docker run.
1197
1182
  #
1198
1183
  # <note markdown="1"> This parameter is not supported for Windows containers.
1199
1184
  #
@@ -1203,13 +1188,6 @@ module Aws::ECS
1203
1188
  # able to communicate with each other without requiring links or host
1204
1189
  # port mappings. Network isolation is achieved on the container
1205
1190
  # instance using security groups and VPC settings.
1206
- #
1207
- #
1208
- #
1209
- # [1]: https://docs.docker.com/network/links/
1210
- # [2]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1211
- # [3]: https://docs.docker.com/engine/api/v1.35/
1212
- # [4]: https://docs.docker.com/engine/reference/run/#security-configuration
1213
1191
  # @return [Array<String>]
1214
1192
  #
1215
1193
  # @!attribute [rw] port_mappings
@@ -1226,13 +1204,12 @@ module Aws::ECS
1226
1204
  # so you can't access a container's mapped port from the host
1227
1205
  # itself.
1228
1206
  #
1229
- # This parameter maps to `PortBindings` in the [Create a container][1]
1230
- # section of the [Docker Remote API][2] and the `--publish` option to
1231
- # [docker run][3]. If the network mode of a task definition is set to
1232
- # `none`, then you can't specify port mappings. If the network mode
1233
- # of a task definition is set to `host`, then host ports must either
1234
- # be undefined or they must match the container port in the port
1235
- # mapping.
1207
+ # This parameter maps to `PortBindings` in the the docker
1208
+ # create-container command and the `--publish` option to docker run.
1209
+ # If the network mode of a task definition is set to `none`, then you
1210
+ # can't specify port mappings. If the network mode of a task
1211
+ # definition is set to `host`, then host ports must either be
1212
+ # undefined or they must match the container port in the port mapping.
1236
1213
  #
1237
1214
  # <note markdown="1"> After a task reaches the `RUNNING` status, manual and automatic host
1238
1215
  # and container port assignments are visible in the **Network
@@ -1241,12 +1218,6 @@ module Aws::ECS
1241
1218
  # `networkBindings` section DescribeTasks responses.
1242
1219
  #
1243
1220
  # </note>
1244
- #
1245
- #
1246
- #
1247
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1248
- # [2]: https://docs.docker.com/engine/api/v1.35/
1249
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1250
1221
  # @return [Array<Types::PortMapping>]
1251
1222
  #
1252
1223
  # @!attribute [rw] essential
@@ -1269,6 +1240,18 @@ module Aws::ECS
1269
1240
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html
1270
1241
  # @return [Boolean]
1271
1242
  #
1243
+ # @!attribute [rw] restart_policy
1244
+ # The restart policy for a container. When you set up a restart
1245
+ # policy, Amazon ECS can restart the container without needing to
1246
+ # replace the task. For more information, see [Restart individual
1247
+ # containers in Amazon ECS tasks with container restart policies][1]
1248
+ # in the *Amazon Elastic Container Service Developer Guide*.
1249
+ #
1250
+ #
1251
+ #
1252
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html
1253
+ # @return [Types::ContainerRestartPolicy]
1254
+ #
1272
1255
  # @!attribute [rw] entry_point
1273
1256
  # Early versions of the Amazon ECS container agent don't properly
1274
1257
  # handle `entryPoint` parameters. If you have problems using
@@ -1276,62 +1259,35 @@ module Aws::ECS
1276
1259
  # arguments as `command` array items instead.
1277
1260
  #
1278
1261
  # The entry point that's passed to the container. This parameter maps
1279
- # to `Entrypoint` in the [Create a container][1] section of the
1280
- # [Docker Remote API][2] and the `--entrypoint` option to [docker
1281
- # run][3]. For more information, see
1282
- # [https://docs.docker.com/engine/reference/builder/#entrypoint][4].
1283
- #
1284
- #
1285
- #
1286
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1287
- # [2]: https://docs.docker.com/engine/api/v1.35/
1288
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1289
- # [4]: https://docs.docker.com/engine/reference/builder/#entrypoint
1262
+ # to `Entrypoint` in tthe docker create-container command and the
1263
+ # `--entrypoint` option to docker run.
1290
1264
  # @return [Array<String>]
1291
1265
  #
1292
1266
  # @!attribute [rw] command
1293
1267
  # The command that's passed to the container. This parameter maps to
1294
- # `Cmd` in the [Create a container][1] section of the [Docker Remote
1295
- # API][2] and the `COMMAND` parameter to [docker run][3]. For more
1296
- # information, see
1297
- # [https://docs.docker.com/engine/reference/builder/#cmd][4]. If there
1298
- # are multiple arguments, each argument is a separated string in the
1299
- # array.
1300
- #
1301
- #
1302
- #
1303
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1304
- # [2]: https://docs.docker.com/engine/api/v1.35/
1305
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1306
- # [4]: https://docs.docker.com/engine/reference/builder/#cmd
1268
+ # `Cmd` in the docker create-container command and the `COMMAND`
1269
+ # parameter to docker run. If there are multiple arguments, each
1270
+ # argument is a separated string in the array.
1307
1271
  # @return [Array<String>]
1308
1272
  #
1309
1273
  # @!attribute [rw] environment
1310
1274
  # The environment variables to pass to a container. This parameter
1311
- # maps to `Env` in the [Create a container][1] section of the [Docker
1312
- # Remote API][2] and the `--env` option to [docker run][3].
1275
+ # maps to `Env` in the docker create-container command and the `--env`
1276
+ # option to docker run.
1313
1277
  #
1314
1278
  # We don't recommend that you use plaintext environment variables for
1315
1279
  # sensitive information, such as credential data.
1316
- #
1317
- #
1318
- #
1319
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1320
- # [2]: https://docs.docker.com/engine/api/v1.35/
1321
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1322
1280
  # @return [Array<Types::KeyValuePair>]
1323
1281
  #
1324
1282
  # @!attribute [rw] environment_files
1325
1283
  # A list of files containing the environment variables to pass to a
1326
- # container. This parameter maps to the `--env-file` option to [docker
1327
- # run][1].
1284
+ # container. This parameter maps to the `--env-file` option to docker
1285
+ # run.
1328
1286
  #
1329
1287
  # You can specify up to ten environment files. The file must have a
1330
1288
  # `.env` file extension. Each line in an environment file contains an
1331
1289
  # environment variable in `VARIABLE=VALUE` format. Lines beginning
1332
- # with `#` are treated as comments and are ignored. For more
1333
- # information about the environment variable file syntax, see [Declare
1334
- # default environment variables in file][2].
1290
+ # with `#` are treated as comments and are ignored.
1335
1291
  #
1336
1292
  # If there are environment variables specified using the `environment`
1337
1293
  # parameter in a container definition, they take precedence over the
@@ -1339,44 +1295,29 @@ module Aws::ECS
1339
1295
  # environment files are specified that contain the same variable,
1340
1296
  # they're processed from the top down. We recommend that you use
1341
1297
  # unique variable names. For more information, see [Specifying
1342
- # Environment Variables][3] in the *Amazon Elastic Container Service
1298
+ # Environment Variables][1] in the *Amazon Elastic Container Service
1343
1299
  # Developer Guide*.
1344
1300
  #
1345
1301
  #
1346
1302
  #
1347
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
1348
- # [2]: https://docs.docker.com/compose/env-file/
1349
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html
1303
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html
1350
1304
  # @return [Array<Types::EnvironmentFile>]
1351
1305
  #
1352
1306
  # @!attribute [rw] mount_points
1353
1307
  # The mount points for data volumes in your container.
1354
1308
  #
1355
- # This parameter maps to `Volumes` in the [Create a container][1]
1356
- # section of the [Docker Remote API][2] and the `--volume` option to
1357
- # [docker run][3].
1309
+ # This parameter maps to `Volumes` in the the docker create-container
1310
+ # command and the `--volume` option to docker run.
1358
1311
  #
1359
1312
  # Windows containers can mount whole directories on the same drive as
1360
1313
  # `$env:ProgramData`. Windows containers can't mount directories on a
1361
1314
  # different drive, and mount point can't be across drives.
1362
- #
1363
- #
1364
- #
1365
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1366
- # [2]: https://docs.docker.com/engine/api/v1.35/
1367
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1368
1315
  # @return [Array<Types::MountPoint>]
1369
1316
  #
1370
1317
  # @!attribute [rw] volumes_from
1371
1318
  # Data volumes to mount from another container. This parameter maps to
1372
- # `VolumesFrom` in the [Create a container][1] section of the [Docker
1373
- # Remote API][2] and the `--volumes-from` option to [docker run][3].
1374
- #
1375
- #
1376
- #
1377
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1378
- # [2]: https://docs.docker.com/engine/api/v1.35/
1379
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1319
+ # `VolumesFrom` in tthe docker create-container command and the
1320
+ # `--volumes-from` option to docker run.
1380
1321
  # @return [Array<Types::VolumeFrom>]
1381
1322
  #
1382
1323
  # @!attribute [rw] linux_parameters
@@ -1469,7 +1410,7 @@ module Aws::ECS
1469
1410
  # [Amazon ECS-optimized Linux AMI][2] in the *Amazon Elastic Container
1470
1411
  # Service Developer Guide*.
1471
1412
  #
1472
- # The valid values are 2-120 seconds.
1413
+ # The valid values for Fargate are 2-120 seconds.
1473
1414
  #
1474
1415
  #
1475
1416
  #
@@ -1521,25 +1462,19 @@ module Aws::ECS
1521
1462
  #
1522
1463
  # @!attribute [rw] hostname
1523
1464
  # The hostname to use for your container. This parameter maps to
1524
- # `Hostname` in the [Create a container][1] section of the [Docker
1525
- # Remote API][2] and the `--hostname` option to [docker run][3].
1465
+ # `Hostname` in thethe docker create-container command and the
1466
+ # `--hostname` option to docker run.
1526
1467
  #
1527
1468
  # <note markdown="1"> The `hostname` parameter is not supported if you're using the
1528
1469
  # `awsvpc` network mode.
1529
1470
  #
1530
1471
  # </note>
1531
- #
1532
- #
1533
- #
1534
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1535
- # [2]: https://docs.docker.com/engine/api/v1.35/
1536
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1537
1472
  # @return [String]
1538
1473
  #
1539
1474
  # @!attribute [rw] user
1540
1475
  # The user to use inside the container. This parameter maps to `User`
1541
- # in the [Create a container][1] section of the [Docker Remote API][2]
1542
- # and the `--user` option to [docker run][3].
1476
+ # in the docker create-container command and the `--user` option to
1477
+ # docker run.
1543
1478
  #
1544
1479
  # When running tasks using the `host` network mode, don't run
1545
1480
  # containers using the root user (UID 0). We recommend using a
@@ -1563,135 +1498,83 @@ module Aws::ECS
1563
1498
  # <note markdown="1"> This parameter is not supported for Windows containers.
1564
1499
  #
1565
1500
  # </note>
1566
- #
1567
- #
1568
- #
1569
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1570
- # [2]: https://docs.docker.com/engine/api/v1.35/
1571
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1572
1501
  # @return [String]
1573
1502
  #
1574
1503
  # @!attribute [rw] working_directory
1575
1504
  # The working directory to run commands inside the container in. This
1576
- # parameter maps to `WorkingDir` in the [Create a container][1]
1577
- # section of the [Docker Remote API][2] and the `--workdir` option to
1578
- # [docker run][3].
1579
- #
1580
- #
1581
- #
1582
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1583
- # [2]: https://docs.docker.com/engine/api/v1.35/
1584
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1505
+ # parameter maps to `WorkingDir` in the docker create-container
1506
+ # command and the `--workdir` option to docker run.
1585
1507
  # @return [String]
1586
1508
  #
1587
1509
  # @!attribute [rw] disable_networking
1588
1510
  # When this parameter is true, networking is off within the container.
1589
- # This parameter maps to `NetworkDisabled` in the [Create a
1590
- # container][1] section of the [Docker Remote API][2].
1511
+ # This parameter maps to `NetworkDisabled` in the docker
1512
+ # create-container command.
1591
1513
  #
1592
1514
  # <note markdown="1"> This parameter is not supported for Windows containers.
1593
1515
  #
1594
1516
  # </note>
1595
- #
1596
- #
1597
- #
1598
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1599
- # [2]: https://docs.docker.com/engine/api/v1.35/
1600
1517
  # @return [Boolean]
1601
1518
  #
1602
1519
  # @!attribute [rw] privileged
1603
1520
  # When this parameter is true, the container is given elevated
1604
1521
  # privileges on the host container instance (similar to the `root`
1605
- # user). This parameter maps to `Privileged` in the [Create a
1606
- # container][1] section of the [Docker Remote API][2] and the
1607
- # `--privileged` option to [docker run][3].
1522
+ # user). This parameter maps to `Privileged` in the the docker
1523
+ # create-container command and the `--privileged` option to docker run
1608
1524
  #
1609
1525
  # <note markdown="1"> This parameter is not supported for Windows containers or tasks run
1610
1526
  # on Fargate.
1611
1527
  #
1612
1528
  # </note>
1613
- #
1614
- #
1615
- #
1616
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1617
- # [2]: https://docs.docker.com/engine/api/v1.35/
1618
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1619
1529
  # @return [Boolean]
1620
1530
  #
1621
1531
  # @!attribute [rw] readonly_root_filesystem
1622
1532
  # When this parameter is true, the container is given read-only access
1623
1533
  # to its root file system. This parameter maps to `ReadonlyRootfs` in
1624
- # the [Create a container][1] section of the [Docker Remote API][2]
1625
- # and the `--read-only` option to [docker run][3].
1534
+ # the docker create-container command and the `--read-only` option to
1535
+ # docker run.
1626
1536
  #
1627
1537
  # <note markdown="1"> This parameter is not supported for Windows containers.
1628
1538
  #
1629
1539
  # </note>
1630
- #
1631
- #
1632
- #
1633
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1634
- # [2]: https://docs.docker.com/engine/api/v1.35/
1635
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1636
1540
  # @return [Boolean]
1637
1541
  #
1638
1542
  # @!attribute [rw] dns_servers
1639
1543
  # A list of DNS servers that are presented to the container. This
1640
- # parameter maps to `Dns` in the [Create a container][1] section of
1641
- # the [Docker Remote API][2] and the `--dns` option to [docker
1642
- # run][3].
1544
+ # parameter maps to `Dns` in the the docker create-container command
1545
+ # and the `--dns` option to docker run.
1643
1546
  #
1644
1547
  # <note markdown="1"> This parameter is not supported for Windows containers.
1645
1548
  #
1646
1549
  # </note>
1647
- #
1648
- #
1649
- #
1650
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1651
- # [2]: https://docs.docker.com/engine/api/v1.35/
1652
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1653
1550
  # @return [Array<String>]
1654
1551
  #
1655
1552
  # @!attribute [rw] dns_search_domains
1656
1553
  # A list of DNS search domains that are presented to the container.
1657
- # This parameter maps to `DnsSearch` in the [Create a container][1]
1658
- # section of the [Docker Remote API][2] and the `--dns-search` option
1659
- # to [docker run][3].
1554
+ # This parameter maps to `DnsSearch` in the docker create-container
1555
+ # command and the `--dns-search` option to docker run.
1660
1556
  #
1661
1557
  # <note markdown="1"> This parameter is not supported for Windows containers.
1662
1558
  #
1663
1559
  # </note>
1664
- #
1665
- #
1666
- #
1667
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1668
- # [2]: https://docs.docker.com/engine/api/v1.35/
1669
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1670
1560
  # @return [Array<String>]
1671
1561
  #
1672
1562
  # @!attribute [rw] extra_hosts
1673
1563
  # A list of hostnames and IP address mappings to append to the
1674
1564
  # `/etc/hosts` file on the container. This parameter maps to
1675
- # `ExtraHosts` in the [Create a container][1] section of the [Docker
1676
- # Remote API][2] and the `--add-host` option to [docker run][3].
1565
+ # `ExtraHosts` in the docker create-container command and the
1566
+ # `--add-host` option to docker run.
1677
1567
  #
1678
1568
  # <note markdown="1"> This parameter isn't supported for Windows containers or tasks that
1679
1569
  # use the `awsvpc` network mode.
1680
1570
  #
1681
1571
  # </note>
1682
- #
1683
- #
1684
- #
1685
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1686
- # [2]: https://docs.docker.com/engine/api/v1.35/
1687
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1688
1572
  # @return [Array<Types::HostEntry>]
1689
1573
  #
1690
1574
  # @!attribute [rw] docker_security_options
1691
1575
  # A list of strings to provide custom configuration for multiple
1692
- # security systems. For more information about valid values, see
1693
- # [Docker Run Security Configuration][1]. This field isn't valid for
1694
- # containers in tasks using the Fargate launch type.
1576
+ # security systems. This field isn't valid for containers in tasks
1577
+ # using the Fargate launch type.
1695
1578
  #
1696
1579
  # For Linux tasks on EC2, this parameter can be used to reference
1697
1580
  # custom labels for SELinux and AppArmor multi-level security systems.
@@ -1699,95 +1582,67 @@ module Aws::ECS
1699
1582
  # For any tasks on EC2, this parameter can be used to reference a
1700
1583
  # credential spec file that configures a container for Active
1701
1584
  # Directory authentication. For more information, see [Using gMSAs for
1702
- # Windows Containers][2] and [Using gMSAs for Linux Containers][3] in
1585
+ # Windows Containers][1] and [Using gMSAs for Linux Containers][2] in
1703
1586
  # the *Amazon Elastic Container Service Developer Guide*.
1704
1587
  #
1705
- # This parameter maps to `SecurityOpt` in the [Create a container][4]
1706
- # section of the [Docker Remote API][5] and the `--security-opt`
1707
- # option to [docker run][1].
1588
+ # This parameter maps to `SecurityOpt` in the docker create-container
1589
+ # command and the `--security-opt` option to docker run.
1708
1590
  #
1709
1591
  # <note markdown="1"> The Amazon ECS container agent running on a container instance must
1710
1592
  # register with the `ECS_SELINUX_CAPABLE=true` or
1711
1593
  # `ECS_APPARMOR_CAPABLE=true` environment variables before containers
1712
1594
  # placed on that instance can use these security options. For more
1713
- # information, see [Amazon ECS Container Agent Configuration][6] in
1595
+ # information, see [Amazon ECS Container Agent Configuration][3] in
1714
1596
  # the *Amazon Elastic Container Service Developer Guide*.
1715
1597
  #
1716
1598
  # </note>
1717
1599
  #
1718
- # For more information about valid values, see [Docker Run Security
1719
- # Configuration][1].
1720
- #
1721
1600
  # Valid values: "no-new-privileges" \| "apparmor:PROFILE" \|
1722
1601
  # "label:value" \| "credentialspec:CredentialSpecFilePath"
1723
1602
  #
1724
1603
  #
1725
1604
  #
1726
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
1727
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html
1728
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html
1729
- # [4]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1730
- # [5]: https://docs.docker.com/engine/api/v1.35/
1731
- # [6]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1605
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html
1606
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html
1607
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1732
1608
  # @return [Array<String>]
1733
1609
  #
1734
1610
  # @!attribute [rw] interactive
1735
1611
  # When this parameter is `true`, you can deploy containerized
1736
1612
  # applications that require `stdin` or a `tty` to be allocated. This
1737
- # parameter maps to `OpenStdin` in the [Create a container][1] section
1738
- # of the [Docker Remote API][2] and the `--interactive` option to
1739
- # [docker run][3].
1740
- #
1741
- #
1742
- #
1743
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1744
- # [2]: https://docs.docker.com/engine/api/v1.35/
1745
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1613
+ # parameter maps to `OpenStdin` in the docker create-container command
1614
+ # and the `--interactive` option to docker run.
1746
1615
  # @return [Boolean]
1747
1616
  #
1748
1617
  # @!attribute [rw] pseudo_terminal
1749
1618
  # When this parameter is `true`, a TTY is allocated. This parameter
1750
- # maps to `Tty` in the [Create a container][1] section of the [Docker
1751
- # Remote API][2] and the `--tty` option to [docker run][3].
1752
- #
1753
- #
1754
- #
1755
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1756
- # [2]: https://docs.docker.com/engine/api/v1.35/
1757
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1619
+ # maps to `Tty` in tthe docker create-container command and the
1620
+ # `--tty` option to docker run.
1758
1621
  # @return [Boolean]
1759
1622
  #
1760
1623
  # @!attribute [rw] docker_labels
1761
1624
  # A key/value map of labels to add to the container. This parameter
1762
- # maps to `Labels` in the [Create a container][1] section of the
1763
- # [Docker Remote API][2] and the `--label` option to [docker run][3].
1764
- # This parameter requires version 1.18 of the Docker Remote API or
1765
- # greater on your container instance. To check the Docker Remote API
1766
- # version on your container instance, log in to your container
1767
- # instance and run the following command: `sudo docker version
1768
- # --format '\{\{.Server.APIVersion\}\}'`
1769
- #
1770
- #
1771
- #
1772
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1773
- # [2]: https://docs.docker.com/engine/api/v1.35/
1774
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1625
+ # maps to `Labels` in the docker create-container command and the
1626
+ # `--label` option to docker run. This parameter requires version 1.18
1627
+ # of the Docker Remote API or greater on your container instance. To
1628
+ # check the Docker Remote API version on your container instance, log
1629
+ # in to your container instance and run the following command: `sudo
1630
+ # docker version --format '\{\{.Server.APIVersion\}\}'`
1775
1631
  # @return [Hash<String,String>]
1776
1632
  #
1777
1633
  # @!attribute [rw] ulimits
1778
1634
  # A list of `ulimits` to set in the container. If a `ulimit` value is
1779
1635
  # specified in a task definition, it overrides the default values set
1780
- # by Docker. This parameter maps to `Ulimits` in the [Create a
1781
- # container][1] section of the [Docker Remote API][2] and the
1782
- # `--ulimit` option to [docker run][3]. Valid naming values are
1783
- # displayed in the Ulimit data type.
1636
+ # by Docker. This parameter maps to `Ulimits` in tthe docker
1637
+ # create-container command and the `--ulimit` option to docker run.
1638
+ # Valid naming values are displayed in the Ulimit data type.
1784
1639
  #
1785
1640
  # Amazon ECS tasks hosted on Fargate use the default resource limit
1786
1641
  # values set by the operating system with the exception of the
1787
1642
  # `nofile` resource limit parameter which Fargate overrides. The
1788
1643
  # `nofile` resource limit sets a restriction on the number of open
1789
- # files that a container can use. The default `nofile` soft limit is
1790
- # `1024` and the default hard limit is `65535`.
1644
+ # files that a container can use. The default `nofile` soft limit is `
1645
+ # 65535` and the default hard limit is `65535`.
1791
1646
  #
1792
1647
  # This parameter requires version 1.18 of the Docker Remote API or
1793
1648
  # greater on your container instance. To check the Docker Remote API
@@ -1798,28 +1653,20 @@ module Aws::ECS
1798
1653
  # <note markdown="1"> This parameter is not supported for Windows containers.
1799
1654
  #
1800
1655
  # </note>
1801
- #
1802
- #
1803
- #
1804
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1805
- # [2]: https://docs.docker.com/engine/api/v1.35/
1806
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1807
1656
  # @return [Array<Types::Ulimit>]
1808
1657
  #
1809
1658
  # @!attribute [rw] log_configuration
1810
1659
  # The log configuration specification for the container.
1811
1660
  #
1812
- # This parameter maps to `LogConfig` in the [Create a container][1]
1813
- # section of the [Docker Remote API][2] and the `--log-driver` option
1814
- # to [docker run][3]. By default, containers use the same logging
1815
- # driver that the Docker daemon uses. However the container can use a
1816
- # different logging driver than the Docker daemon by specifying a log
1817
- # driver with this parameter in the container definition. To use a
1818
- # different logging driver for a container, the log system must be
1819
- # configured properly on the container instance (or on a different log
1820
- # server for remote logging options). For more information about the
1821
- # options for different supported log drivers, see [Configure logging
1822
- # drivers][4] in the Docker documentation.
1661
+ # This parameter maps to `LogConfig` in the docker create-container
1662
+ # command and the `--log-driver` option to docker run. By default,
1663
+ # containers use the same logging driver that the Docker daemon uses.
1664
+ # However the container can use a different logging driver than the
1665
+ # Docker daemon by specifying a log driver with this parameter in the
1666
+ # container definition. To use a different logging driver for a
1667
+ # container, the log system must be configured properly on the
1668
+ # container instance (or on a different log server for remote logging
1669
+ # options).
1823
1670
  #
1824
1671
  # <note markdown="1"> Amazon ECS currently supports a subset of the logging drivers
1825
1672
  # available to the Docker daemon (shown in the LogConfiguration data
@@ -1839,46 +1686,29 @@ module Aws::ECS
1839
1686
  # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
1840
1687
  # containers placed on that instance can use these log configuration
1841
1688
  # options. For more information, see [Amazon ECS Container Agent
1842
- # Configuration][5] in the *Amazon Elastic Container Service Developer
1689
+ # Configuration][1] in the *Amazon Elastic Container Service Developer
1843
1690
  # Guide*.
1844
1691
  #
1845
1692
  # </note>
1846
1693
  #
1847
1694
  #
1848
1695
  #
1849
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1850
- # [2]: https://docs.docker.com/engine/api/v1.35/
1851
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1852
- # [4]: https://docs.docker.com/engine/admin/logging/overview/
1853
- # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1696
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1854
1697
  # @return [Types::LogConfiguration]
1855
1698
  #
1856
1699
  # @!attribute [rw] health_check
1857
1700
  # The container health check command and associated configuration
1858
1701
  # parameters for the container. This parameter maps to `HealthCheck`
1859
- # in the [Create a container][1] section of the [Docker Remote API][2]
1860
- # and the `HEALTHCHECK` parameter of [docker run][3].
1861
- #
1862
- #
1863
- #
1864
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1865
- # [2]: https://docs.docker.com/engine/api/v1.35/
1866
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1702
+ # in the docker create-container command and the `HEALTHCHECK`
1703
+ # parameter of docker run.
1867
1704
  # @return [Types::HealthCheck]
1868
1705
  #
1869
1706
  # @!attribute [rw] system_controls
1870
1707
  # A list of namespaced kernel parameters to set in the container. This
1871
- # parameter maps to `Sysctls` in the [Create a container][1] section
1872
- # of the [Docker Remote API][2] and the `--sysctl` option to [docker
1873
- # run][3]. For example, you can configure
1874
- # `net.ipv4.tcp_keepalive_time` setting to maintain longer lived
1875
- # connections.
1876
- #
1877
- #
1878
- #
1879
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1880
- # [2]: https://docs.docker.com/engine/api/v1.35/
1881
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1708
+ # parameter maps to `Sysctls` in tthe docker create-container command
1709
+ # and the `--sysctl` option to docker run. For example, you can
1710
+ # configure `net.ipv4.tcp_keepalive_time` setting to maintain longer
1711
+ # lived connections.
1882
1712
  # @return [Array<Types::SystemControl>]
1883
1713
  #
1884
1714
  # @!attribute [rw] resource_requirements
@@ -1955,6 +1785,7 @@ module Aws::ECS
1955
1785
  :links,
1956
1786
  :port_mappings,
1957
1787
  :essential,
1788
+ :restart_policy,
1958
1789
  :entry_point,
1959
1790
  :command,
1960
1791
  :environment,
@@ -2357,6 +2188,48 @@ module Aws::ECS
2357
2188
  include Aws::Structure
2358
2189
  end
2359
2190
 
2191
+ # You can enable a restart policy for each container defined in your
2192
+ # task definition, to overcome transient failures faster and maintain
2193
+ # task availability. When you enable a restart policy for a container,
2194
+ # Amazon ECS can restart the container if it exits, without needing to
2195
+ # replace the task. For more information, see [Restart individual
2196
+ # containers in Amazon ECS tasks with container restart policies][1] in
2197
+ # the *Amazon Elastic Container Service Developer Guide*.
2198
+ #
2199
+ #
2200
+ #
2201
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html
2202
+ #
2203
+ # @!attribute [rw] enabled
2204
+ # Specifies whether a restart policy is enabled for the container.
2205
+ # @return [Boolean]
2206
+ #
2207
+ # @!attribute [rw] ignored_exit_codes
2208
+ # A list of exit codes that Amazon ECS will ignore and not attempt a
2209
+ # restart on. You can specify a maximum of 50 container exit codes. By
2210
+ # default, Amazon ECS does not ignore any exit codes.
2211
+ # @return [Array<Integer>]
2212
+ #
2213
+ # @!attribute [rw] restart_attempt_period
2214
+ # A period of time (in seconds) that the container must run for before
2215
+ # a restart can be attempted. A container can be restarted only once
2216
+ # every `restartAttemptPeriod` seconds. If a container isn't able to
2217
+ # run for this time period and exits early, it will not be restarted.
2218
+ # You can set a minimum `restartAttemptPeriod` of 60 seconds and a
2219
+ # maximum `restartAttemptPeriod` of 1800 seconds. By default, a
2220
+ # container must run for 300 seconds before it can be restarted.
2221
+ # @return [Integer]
2222
+ #
2223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerRestartPolicy AWS API Documentation
2224
+ #
2225
+ class ContainerRestartPolicy < Struct.new(
2226
+ :enabled,
2227
+ :ignored_exit_codes,
2228
+ :restart_attempt_period)
2229
+ SENSITIVE = []
2230
+ include Aws::Structure
2231
+ end
2232
+
2360
2233
  # An object that represents a change in state for a container.
2361
2234
  #
2362
2235
  # @!attribute [rw] container_name
@@ -4518,43 +4391,21 @@ module Aws::ECS
4518
4391
  # placement. If the driver was installed using the Docker plugin CLI,
4519
4392
  # use `docker plugin ls` to retrieve the driver name from your
4520
4393
  # container instance. If the driver was installed using another
4521
- # method, use Docker plugin discovery to retrieve the driver name. For
4522
- # more information, see [Docker plugin discovery][1]. This parameter
4523
- # maps to `Driver` in the [Create a volume][2] section of the [Docker
4524
- # Remote API][3] and the `xxdriver` option to [docker volume
4525
- # create][4].
4526
- #
4527
- #
4528
- #
4529
- # [1]: https://docs.docker.com/engine/extend/plugin_api/#plugin-discovery
4530
- # [2]: https://docs.docker.com/engine/api/v1.35/#operation/VolumeCreate
4531
- # [3]: https://docs.docker.com/engine/api/v1.35/
4532
- # [4]: https://docs.docker.com/engine/reference/commandline/volume_create/
4394
+ # method, use Docker plugin discovery to retrieve the driver name.
4395
+ # This parameter maps to `Driver` in the docker create-container
4396
+ # command and the `xxdriver` option to docker volume create.
4533
4397
  # @return [String]
4534
4398
  #
4535
4399
  # @!attribute [rw] driver_opts
4536
4400
  # A map of Docker driver-specific options passed through. This
4537
- # parameter maps to `DriverOpts` in the [Create a volume][1] section
4538
- # of the [Docker Remote API][2] and the `xxopt` option to [docker
4539
- # volume create][3].
4540
- #
4541
- #
4542
- #
4543
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/VolumeCreate
4544
- # [2]: https://docs.docker.com/engine/api/v1.35/
4545
- # [3]: https://docs.docker.com/engine/reference/commandline/volume_create/
4401
+ # parameter maps to `DriverOpts` in the docker create-volume command
4402
+ # and the `xxopt` option to docker volume create.
4546
4403
  # @return [Hash<String,String>]
4547
4404
  #
4548
4405
  # @!attribute [rw] labels
4549
4406
  # Custom metadata to add to your Docker volume. This parameter maps to
4550
- # `Labels` in the [Create a volume][1] section of the [Docker Remote
4551
- # API][2] and the `xxlabel` option to [docker volume create][3].
4552
- #
4553
- #
4554
- #
4555
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/VolumeCreate
4556
- # [2]: https://docs.docker.com/engine/api/v1.35/
4557
- # [3]: https://docs.docker.com/engine/reference/commandline/volume_create/
4407
+ # `Labels` in the docker create-container command and the `xxlabel`
4408
+ # option to docker volume create.
4558
4409
  # @return [Hash<String,String>]
4559
4410
  #
4560
4411
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DockerVolumeConfiguration AWS API Documentation
@@ -5151,7 +5002,7 @@ module Aws::ECS
5151
5002
  # parameters that are specified in a container definition override any
5152
5003
  # Docker health checks that exist in the container image (such as those
5153
5004
  # specified in a parent image or from the image's Dockerfile). This
5154
- # configuration maps to the `HEALTHCHECK` parameter of [docker run][1].
5005
+ # configuration maps to the `HEALTHCHECK` parameter of docker run.
5155
5006
  #
5156
5007
  # <note markdown="1"> The Amazon ECS container agent only monitors and reports on the health
5157
5008
  # checks specified in the task definition. Amazon ECS does not monitor
@@ -5250,20 +5101,19 @@ module Aws::ECS
5250
5101
  #
5251
5102
  # * Container health checks require version `1.17.0` or greater of the
5252
5103
  # Amazon ECS container agent. For more information, see [Updating the
5253
- # Amazon ECS container agent][2].
5104
+ # Amazon ECS container agent][1].
5254
5105
  #
5255
5106
  # * Container health checks are supported for Fargate tasks if you're
5256
5107
  # using platform version `1.1.0` or greater. For more information, see
5257
- # [Fargate platform versions][3].
5108
+ # [Fargate platform versions][2].
5258
5109
  #
5259
5110
  # * Container health checks aren't supported for tasks that are part of
5260
5111
  # a service that's configured to use a Classic Load Balancer.
5261
5112
  #
5262
5113
  #
5263
5114
  #
5264
- # [1]: https://docs.docker.com/engine/reference/run/
5265
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html
5266
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
5115
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html
5116
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
5267
5117
  #
5268
5118
  # @!attribute [rw] command
5269
5119
  # A string array representing the command that the container runs to
@@ -5283,13 +5133,8 @@ module Aws::ECS
5283
5133
  # ` CMD-SHELL, curl -f http://localhost/ || exit 1`
5284
5134
  #
5285
5135
  # An exit code of 0 indicates success, and non-zero exit code
5286
- # indicates failure. For more information, see `HealthCheck` in the
5287
- # [Create a container][1] section of the [Docker Remote API][2].
5288
- #
5289
- #
5290
- #
5291
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
5292
- # [2]: https://docs.docker.com/engine/api/v1.35/
5136
+ # indicates failure. For more information, see `HealthCheck` in tthe
5137
+ # docker create-container command
5293
5138
  # @return [Array<String>]
5294
5139
  #
5295
5140
  # @!attribute [rw] interval
@@ -5482,22 +5327,18 @@ module Aws::ECS
5482
5327
 
5483
5328
  # The Linux capabilities to add or remove from the default Docker
5484
5329
  # configuration for a container defined in the task definition. For more
5485
- # information about the default capabilities and the non-default
5486
- # available capabilities, see [Runtime privilege and Linux
5487
- # capabilities][1] in the *Docker run reference*. For more detailed
5488
- # information about these Linux capabilities, see the
5489
- # [capabilities(7)][2] Linux manual page.
5330
+ # detailed information about these Linux capabilities, see the
5331
+ # [capabilities(7)][1] Linux manual page.
5490
5332
  #
5491
5333
  #
5492
5334
  #
5493
- # [1]: https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities
5494
- # [2]: http://man7.org/linux/man-pages/man7/capabilities.7.html
5335
+ # [1]: http://man7.org/linux/man-pages/man7/capabilities.7.html
5495
5336
  #
5496
5337
  # @!attribute [rw] add
5497
5338
  # The Linux capabilities for the container that have been added to the
5498
5339
  # default configuration provided by Docker. This parameter maps to
5499
- # `CapAdd` in the [Create a container][1] section of the [Docker
5500
- # Remote API][2] and the `--cap-add` option to [docker run][3].
5340
+ # `CapAdd` in the docker create-container command and the `--cap-add`
5341
+ # option to docker run.
5501
5342
  #
5502
5343
  # <note markdown="1"> Tasks launched on Fargate only support adding the `SYS_PTRACE`
5503
5344
  # kernel capability.
@@ -5513,19 +5354,13 @@ module Aws::ECS
5513
5354
  # "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT"
5514
5355
  # | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" |
5515
5356
  # "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"`
5516
- #
5517
- #
5518
- #
5519
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
5520
- # [2]: https://docs.docker.com/engine/api/v1.35/
5521
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
5522
5357
  # @return [Array<String>]
5523
5358
  #
5524
5359
  # @!attribute [rw] drop
5525
5360
  # The Linux capabilities for the container that have been removed from
5526
5361
  # the default configuration provided by Docker. This parameter maps to
5527
- # `CapDrop` in the [Create a container][1] section of the [Docker
5528
- # Remote API][2] and the `--cap-drop` option to [docker run][3].
5362
+ # `CapDrop` in the docker create-container command and the
5363
+ # `--cap-drop` option to docker run.
5529
5364
  #
5530
5365
  # Valid values: `"ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" |
5531
5366
  # "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" |
@@ -5536,12 +5371,6 @@ module Aws::ECS
5536
5371
  # "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT"
5537
5372
  # | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" |
5538
5373
  # "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"`
5539
- #
5540
- #
5541
- #
5542
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
5543
- # [2]: https://docs.docker.com/engine/api/v1.35/
5544
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
5545
5374
  # @return [Array<String>]
5546
5375
  #
5547
5376
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/KernelCapabilities AWS API Documentation
@@ -5600,19 +5429,13 @@ module Aws::ECS
5600
5429
  #
5601
5430
  # @!attribute [rw] devices
5602
5431
  # Any host devices to expose to the container. This parameter maps to
5603
- # `Devices` in the [Create a container][1] section of the [Docker
5604
- # Remote API][2] and the `--device` option to [docker run][3].
5432
+ # `Devices` in tthe docker create-container command and the `--device`
5433
+ # option to docker run.
5605
5434
  #
5606
5435
  # <note markdown="1"> If you're using tasks that use the Fargate launch type, the
5607
5436
  # `devices` parameter isn't supported.
5608
5437
  #
5609
5438
  # </note>
5610
- #
5611
- #
5612
- #
5613
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
5614
- # [2]: https://docs.docker.com/engine/api/v1.35/
5615
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
5616
5439
  # @return [Array<Types::Device>]
5617
5440
  #
5618
5441
  # @!attribute [rw] init_process_enabled
@@ -5631,31 +5454,22 @@ module Aws::ECS
5631
5454
  #
5632
5455
  # @!attribute [rw] shared_memory_size
5633
5456
  # The value for the size (in MiB) of the `/dev/shm` volume. This
5634
- # parameter maps to the `--shm-size` option to [docker run][1].
5457
+ # parameter maps to the `--shm-size` option to docker run.
5635
5458
  #
5636
5459
  # <note markdown="1"> If you are using tasks that use the Fargate launch type, the
5637
5460
  # `sharedMemorySize` parameter is not supported.
5638
5461
  #
5639
5462
  # </note>
5640
- #
5641
- #
5642
- #
5643
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5644
5463
  # @return [Integer]
5645
5464
  #
5646
5465
  # @!attribute [rw] tmpfs
5647
5466
  # The container path, mount options, and size (in MiB) of the tmpfs
5648
- # mount. This parameter maps to the `--tmpfs` option to [docker
5649
- # run][1].
5467
+ # mount. This parameter maps to the `--tmpfs` option to docker run.
5650
5468
  #
5651
5469
  # <note markdown="1"> If you're using tasks that use the Fargate launch type, the `tmpfs`
5652
5470
  # parameter isn't supported.
5653
5471
  #
5654
5472
  # </note>
5655
- #
5656
- #
5657
- #
5658
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5659
5473
  # @return [Array<Types::Tmpfs>]
5660
5474
  #
5661
5475
  # @!attribute [rw] max_swap
@@ -5692,8 +5506,7 @@ module Aws::ECS
5692
5506
  # between `0` and `100`. If the `swappiness` parameter is not
5693
5507
  # specified, a default value of `60` is used. If a value is not
5694
5508
  # specified for `maxSwap` then this parameter is ignored. This
5695
- # parameter maps to the `--memory-swappiness` option to [docker
5696
- # run][1].
5509
+ # parameter maps to the `--memory-swappiness` option to docker run.
5697
5510
  #
5698
5511
  # <note markdown="1"> If you're using tasks that use the Fargate launch type, the
5699
5512
  # `swappiness` parameter isn't supported.
@@ -5702,10 +5515,6 @@ module Aws::ECS
5702
5515
  # parameter isn't supported.
5703
5516
  #
5704
5517
  # </note>
5705
- #
5706
- #
5707
- #
5708
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5709
5518
  # @return [Integer]
5710
5519
  #
5711
5520
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/LinuxParameters AWS API Documentation
@@ -6555,15 +6364,13 @@ module Aws::ECS
6555
6364
  end
6556
6365
 
6557
6366
  # The log configuration for the container. This parameter maps to
6558
- # `LogConfig` in the [Create a container][1] section of the [Docker
6559
- # Remote API][2] and the `--log-driver` option to [ `docker run` ][3].
6367
+ # `LogConfig` in the docker create-container command and the
6368
+ # `--log-driver` option to docker run.
6560
6369
  #
6561
6370
  # By default, containers use the same logging driver that the Docker
6562
6371
  # daemon uses. However, the container might use a different logging
6563
6372
  # driver than the Docker daemon by specifying a log driver configuration
6564
- # in the container definition. For more information about the options
6565
- # for different supported log drivers, see [Configure logging
6566
- # drivers][4] in the Docker documentation.
6373
+ # in the container definition.
6567
6374
  #
6568
6375
  # Understand the following when specifying a log configuration for your
6569
6376
  # containers.
@@ -6576,8 +6383,8 @@ module Aws::ECS
6576
6383
  # `splunk`, and `awsfirelens`.
6577
6384
  #
6578
6385
  # For tasks hosted on Amazon EC2 instances, the supported log drivers
6579
- # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,
6580
- # `logentries`,`syslog`, `splunk`, and `awsfirelens`.
6386
+ # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,`syslog`,
6387
+ # `splunk`, and `awsfirelens`.
6581
6388
  #
6582
6389
  # * This parameter requires version 1.18 of the Docker Remote API or
6583
6390
  # greater on your container instance.
@@ -6587,7 +6394,7 @@ module Aws::ECS
6587
6394
  # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
6588
6395
  # containers placed on that instance can use these log configuration
6589
6396
  # options. For more information, see [Amazon ECS container agent
6590
- # configuration][5] in the *Amazon Elastic Container Service Developer
6397
+ # configuration][1] in the *Amazon Elastic Container Service Developer
6591
6398
  # Guide*.
6592
6399
  #
6593
6400
  # * For tasks that are on Fargate, because you don't have access to the
@@ -6598,11 +6405,7 @@ module Aws::ECS
6598
6405
  #
6599
6406
  #
6600
6407
  #
6601
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
6602
- # [2]: https://docs.docker.com/engine/api/v1.35/
6603
- # [3]: https://docs.docker.com/engine/reference/commandline/run/
6604
- # [4]: https://docs.docker.com/engine/admin/logging/overview/
6605
- # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
6408
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
6606
6409
  #
6607
6410
  # @!attribute [rw] log_driver
6608
6411
  # The log driver to use for the container.
@@ -6611,16 +6414,16 @@ module Aws::ECS
6611
6414
  # `splunk`, and `awsfirelens`.
6612
6415
  #
6613
6416
  # For tasks hosted on Amazon EC2 instances, the supported log drivers
6614
- # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,
6615
- # `logentries`,`syslog`, `splunk`, and `awsfirelens`.
6417
+ # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`, `syslog`,
6418
+ # `splunk`, and `awsfirelens`.
6616
6419
  #
6617
- # For more information about using the `awslogs` log driver, see
6618
- # [Using the awslogs log driver][1] in the *Amazon Elastic Container
6420
+ # For more information about using the `awslogs` log driver, see [Send
6421
+ # Amazon ECS logs to CloudWatch][1] in the *Amazon Elastic Container
6619
6422
  # Service Developer Guide*.
6620
6423
  #
6621
6424
  # For more information about using the `awsfirelens` log driver, see
6622
- # [Custom log routing][2] in the *Amazon Elastic Container Service
6623
- # Developer Guide*.
6425
+ # [Send Amazon ECS logs to an Amazon Web Services service or Amazon
6426
+ # Web Services Partner][2].
6624
6427
  #
6625
6428
  # <note markdown="1"> If you have a custom driver that isn't listed, you can fork the
6626
6429
  # Amazon ECS container agent project that's [available on GitHub][3]
@@ -7147,11 +6950,10 @@ module Aws::ECS
7147
6950
  # can be left blank or it must be the same value as the `containerPort`.
7148
6951
  #
7149
6952
  # Most fields of this parameter (`containerPort`, `hostPort`,
7150
- # `protocol`) maps to `PortBindings` in the [Create a container][1]
7151
- # section of the [Docker Remote API][2] and the `--publish` option to [
7152
- # `docker run` ][3]. If the network mode of a task definition is set to
7153
- # `host`, host ports must either be undefined or match the container
7154
- # port in the port mapping.
6953
+ # `protocol`) maps to `PortBindings` in the docker create-container
6954
+ # command and the `--publish` option to `docker run`. If the network
6955
+ # mode of a task definition is set to `host`, host ports must either be
6956
+ # undefined or match the container port in the port mapping.
7155
6957
  #
7156
6958
  # <note markdown="1"> You can't expose the same container port for multiple protocols. If
7157
6959
  # you attempt this, an error is returned.
@@ -7162,12 +6964,6 @@ module Aws::ECS
7162
6964
  # and container port assignments are visible in the `networkBindings`
7163
6965
  # section of DescribeTasks API responses.
7164
6966
  #
7165
- #
7166
- #
7167
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
7168
- # [2]: https://docs.docker.com/engine/api/v1.35/
7169
- # [3]: https://docs.docker.com/engine/reference/commandline/run/
7170
- #
7171
6967
  # @!attribute [rw] container_port
7172
6968
  # The port number on the container that's bound to the user-specified
7173
6969
  # or automatically assigned host port.
@@ -7965,14 +7761,13 @@ module Aws::ECS
7965
7761
  # @!attribute [rw] execution_role_arn
7966
7762
  # The Amazon Resource Name (ARN) of the task execution role that
7967
7763
  # grants the Amazon ECS container agent permission to make Amazon Web
7968
- # Services API calls on your behalf. The task execution IAM role is
7969
- # required depending on the requirements of your task. For more
7970
- # information, see [Amazon ECS task execution IAM role][1] in the
7764
+ # Services API calls on your behalf. For informationabout the required
7765
+ # IAM roles for Amazon ECS, see [IAM roles for Amazon ECS][1] in the
7971
7766
  # *Amazon Elastic Container Service Developer Guide*.
7972
7767
  #
7973
7768
  #
7974
7769
  #
7975
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_execution_IAM_role.html
7770
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html
7976
7771
  # @return [String]
7977
7772
  #
7978
7773
  # @!attribute [rw] network_mode
@@ -8002,22 +7797,19 @@ module Aws::ECS
8002
7797
  # non-root user.
8003
7798
  #
8004
7799
  # If the network mode is `awsvpc`, the task is allocated an elastic
8005
- # network interface, and you must specify a NetworkConfiguration value
8006
- # when you create a service or run a task with the task definition.
8007
- # For more information, see [Task Networking][1] in the *Amazon
8008
- # Elastic Container Service Developer Guide*.
7800
+ # network interface, and you must specify a [NetworkConfiguration][1]
7801
+ # value when you create a service or run a task with the task
7802
+ # definition. For more information, see [Task Networking][2] in the
7803
+ # *Amazon Elastic Container Service Developer Guide*.
8009
7804
  #
8010
7805
  # If the network mode is `host`, you cannot run multiple
8011
7806
  # instantiations of the same task on a single container instance when
8012
7807
  # port mappings are used.
8013
7808
  #
8014
- # For more information, see [Network settings][2] in the *Docker run
8015
- # reference*.
8016
7809
  #
8017
7810
  #
8018
- #
8019
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
8020
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
7811
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
7812
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
8021
7813
  # @return [String]
8022
7814
  #
8023
7815
  # @!attribute [rw] container_definitions
@@ -8190,12 +7982,10 @@ module Aws::ECS
8190
7982
  # share the same process namespace.
8191
7983
  #
8192
7984
  # If no value is specified, the default is a private namespace for
8193
- # each container. For more information, see [PID settings][1] in the
8194
- # *Docker run reference*.
7985
+ # each container.
8195
7986
  #
8196
7987
  # If the `host` PID mode is used, there's a heightened risk of
8197
- # undesired process namespace exposure. For more information, see
8198
- # [Docker security][2].
7988
+ # undesired process namespace exposure.
8199
7989
  #
8200
7990
  # <note markdown="1"> This parameter is not supported for Windows containers.
8201
7991
  #
@@ -8206,11 +7996,6 @@ module Aws::ECS
8206
7996
  # (Linux). This isn't supported for Windows containers on Fargate.
8207
7997
  #
8208
7998
  # </note>
8209
- #
8210
- #
8211
- #
8212
- # [1]: https://docs.docker.com/engine/reference/run/#pid-settings---pid
8213
- # [2]: https://docs.docker.com/engine/security/security/
8214
7999
  # @return [String]
8215
8000
  #
8216
8001
  # @!attribute [rw] ipc_mode
@@ -8224,17 +8009,15 @@ module Aws::ECS
8224
8009
  # containers of a task are private and not shared with other
8225
8010
  # containers in a task or on the container instance. If no value is
8226
8011
  # specified, then the IPC resource namespace sharing depends on the
8227
- # Docker daemon setting on the container instance. For more
8228
- # information, see [IPC settings][1] in the *Docker run reference*.
8012
+ # Docker daemon setting on the container instance.
8229
8013
  #
8230
8014
  # If the `host` IPC mode is used, be aware that there is a heightened
8231
- # risk of undesired IPC namespace expose. For more information, see
8232
- # [Docker security][2].
8015
+ # risk of undesired IPC namespace expose.
8233
8016
  #
8234
8017
  # If you are setting namespaced kernel parameters using
8235
8018
  # `systemControls` for the containers in the task, the following will
8236
8019
  # apply to your IPC resource namespace. For more information, see
8237
- # [System Controls][3] in the *Amazon Elastic Container Service
8020
+ # [System Controls][1] in the *Amazon Elastic Container Service
8238
8021
  # Developer Guide*.
8239
8022
  #
8240
8023
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -8250,9 +8033,7 @@ module Aws::ECS
8250
8033
  #
8251
8034
  #
8252
8035
  #
8253
- # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
8254
- # [2]: https://docs.docker.com/engine/security/security/
8255
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
8036
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
8256
8037
  # @return [String]
8257
8038
  #
8258
8039
  # @!attribute [rw] proxy_configuration
@@ -8621,12 +8402,17 @@ module Aws::ECS
8621
8402
  # you automatically trigger a task to run a batch process job, you
8622
8403
  # could apply a unique identifier for that job to your task with the
8623
8404
  # `startedBy` parameter. You can then identify which tasks belong to
8624
- # that job by filtering the results of a ListTasks call with the
8405
+ # that job by filtering the results of a [ListTasks][1] call with the
8625
8406
  # `startedBy` value. Up to 128 letters (uppercase and lowercase),
8626
- # numbers, hyphens (-), and underscores (\_) are allowed.
8407
+ # numbers, hyphens (-), forward slash (/), and underscores (\_) are
8408
+ # allowed.
8627
8409
  #
8628
8410
  # If a task is started by an Amazon ECS service, then the `startedBy`
8629
8411
  # parameter contains the deployment ID of the service that starts it.
8412
+ #
8413
+ #
8414
+ #
8415
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html
8630
8416
  # @return [String]
8631
8417
  #
8632
8418
  # @!attribute [rw] tags
@@ -9283,15 +9069,13 @@ module Aws::ECS
9283
9069
  #
9284
9070
  # @!attribute [rw] log_configuration
9285
9071
  # The log configuration for the container. This parameter maps to
9286
- # `LogConfig` in the [Create a container][1] section of the [Docker
9287
- # Remote API][2] and the `--log-driver` option to [ `docker run` ][3].
9072
+ # `LogConfig` in the docker create-container command and the
9073
+ # `--log-driver` option to docker run.
9288
9074
  #
9289
9075
  # By default, containers use the same logging driver that the Docker
9290
9076
  # daemon uses. However, the container might use a different logging
9291
9077
  # driver than the Docker daemon by specifying a log driver
9292
- # configuration in the container definition. For more information
9293
- # about the options for different supported log drivers, see
9294
- # [Configure logging drivers][4] in the Docker documentation.
9078
+ # configuration in the container definition.
9295
9079
  #
9296
9080
  # Understand the following when specifying a log configuration for
9297
9081
  # your containers.
@@ -9304,8 +9088,8 @@ module Aws::ECS
9304
9088
  # `splunk`, and `awsfirelens`.
9305
9089
  #
9306
9090
  # For tasks hosted on Amazon EC2 instances, the supported log
9307
- # drivers are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,
9308
- # `logentries`,`syslog`, `splunk`, and `awsfirelens`.
9091
+ # drivers are `awslogs`, `fluentd`, `gelf`, `json-file`,
9092
+ # `journald`,`syslog`, `splunk`, and `awsfirelens`.
9309
9093
  #
9310
9094
  # * This parameter requires version 1.18 of the Docker Remote API or
9311
9095
  # greater on your container instance.
@@ -9315,7 +9099,7 @@ module Aws::ECS
9315
9099
  # the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
9316
9100
  # containers placed on that instance can use these log configuration
9317
9101
  # options. For more information, see [Amazon ECS container agent
9318
- # configuration][5] in the *Amazon Elastic Container Service
9102
+ # configuration][1] in the *Amazon Elastic Container Service
9319
9103
  # Developer Guide*.
9320
9104
  #
9321
9105
  # * For tasks that are on Fargate, because you don't have access to
@@ -9326,11 +9110,7 @@ module Aws::ECS
9326
9110
  #
9327
9111
  #
9328
9112
  #
9329
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
9330
- # [2]: https://docs.docker.com/engine/api/v1.35/
9331
- # [3]: https://docs.docker.com/engine/reference/commandline/run/
9332
- # [4]: https://docs.docker.com/engine/admin/logging/overview/
9333
- # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
9113
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
9334
9114
  # @return [Types::LogConfiguration]
9335
9115
  #
9336
9116
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceConnectConfiguration AWS API Documentation
@@ -9958,12 +9738,17 @@ module Aws::ECS
9958
9738
  # you automatically trigger a task to run a batch process job, you
9959
9739
  # could apply a unique identifier for that job to your task with the
9960
9740
  # `startedBy` parameter. You can then identify which tasks belong to
9961
- # that job by filtering the results of a ListTasks call with the
9741
+ # that job by filtering the results of a [ListTasks][1] call with the
9962
9742
  # `startedBy` value. Up to 36 letters (uppercase and lowercase),
9963
- # numbers, hyphens (-), and underscores (\_) are allowed.
9743
+ # numbers, hyphens (-), forward slash (/), and underscores (\_) are
9744
+ # allowed.
9964
9745
  #
9965
9746
  # If a task is started by an Amazon ECS service, the `startedBy`
9966
9747
  # parameter contains the deployment ID of the service that starts it.
9748
+ #
9749
+ #
9750
+ #
9751
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html
9967
9752
  # @return [String]
9968
9753
  #
9969
9754
  # @!attribute [rw] tags
@@ -10254,10 +10039,10 @@ module Aws::ECS
10254
10039
  end
10255
10040
 
10256
10041
  # A list of namespaced kernel parameters to set in the container. This
10257
- # parameter maps to `Sysctls` in the [Create a container][1] section of
10258
- # the [Docker Remote API][2] and the `--sysctl` option to [docker
10259
- # run][3]. For example, you can configure `net.ipv4.tcp_keepalive_time`
10260
- # setting to maintain longer lived connections.
10042
+ # parameter maps to `Sysctls` in tthe docker create-container command
10043
+ # and the `--sysctl` option to docker run. For example, you can
10044
+ # configure `net.ipv4.tcp_keepalive_time` setting to maintain longer
10045
+ # lived connections.
10261
10046
  #
10262
10047
  # We don't recommend that you specify network-related `systemControls`
10263
10048
  # parameters for multiple containers in a single task that also uses
@@ -10275,7 +10060,7 @@ module Aws::ECS
10275
10060
  #
10276
10061
  # If you're setting an IPC resource namespace to use for the containers
10277
10062
  # in the task, the following conditions apply to your system controls.
10278
- # For more information, see [IPC mode][4].
10063
+ # For more information, see [IPC mode][1].
10279
10064
  #
10280
10065
  # * For tasks that use the `host` IPC mode, IPC namespace
10281
10066
  # `systemControls` aren't supported.
@@ -10295,10 +10080,7 @@ module Aws::ECS
10295
10080
  #
10296
10081
  #
10297
10082
  #
10298
- # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
10299
- # [2]: https://docs.docker.com/engine/api/v1.35/
10300
- # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
10301
- # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_definition_ipcmode
10083
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_definition_ipcmode
10302
10084
  #
10303
10085
  # @!attribute [rw] namespace
10304
10086
  # The namespaced kernel parameter to set a `value` for.
@@ -10448,8 +10230,12 @@ module Aws::ECS
10448
10230
  class TargetNotConnectedException < Aws::EmptyStructure; end
10449
10231
 
10450
10232
  # The specified target wasn't found. You can view your available
10451
- # container instances with ListContainerInstances. Amazon ECS container
10452
- # instances are cluster-specific and Region-specific.
10233
+ # container instances with [ListContainerInstances][1]. Amazon ECS
10234
+ # container instances are cluster-specific and Region-specific.
10235
+ #
10236
+ #
10237
+ #
10238
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListContainerInstances.html
10453
10239
  #
10454
10240
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TargetNotFoundException AWS API Documentation
10455
10241
  #
@@ -10861,33 +10647,26 @@ module Aws::ECS
10861
10647
  # @!attribute [rw] task_role_arn
10862
10648
  # The short name or full Amazon Resource Name (ARN) of the Identity
10863
10649
  # and Access Management role that grants containers in the task
10864
- # permission to call Amazon Web Services APIs on your behalf. For more
10865
- # information, see [Amazon ECS Task Role][1] in the *Amazon Elastic
10866
- # Container Service Developer Guide*.
10867
- #
10868
- # IAM roles for tasks on Windows require that the `-EnableTaskIAMRole`
10869
- # option is set when you launch the Amazon ECS-optimized Windows AMI.
10870
- # Your containers must also run some configuration code to use the
10871
- # feature. For more information, see [Windows IAM roles for tasks][2]
10872
- # in the *Amazon Elastic Container Service Developer Guide*.
10650
+ # permission to call Amazon Web Services APIs on your behalf. For
10651
+ # informationabout the required IAM roles for Amazon ECS, see [IAM
10652
+ # roles for Amazon ECS][1] in the *Amazon Elastic Container Service
10653
+ # Developer Guide*.
10873
10654
  #
10874
10655
  #
10875
10656
  #
10876
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html
10877
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows_task_IAM_roles.html
10657
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html
10878
10658
  # @return [String]
10879
10659
  #
10880
10660
  # @!attribute [rw] execution_role_arn
10881
10661
  # The Amazon Resource Name (ARN) of the task execution role that
10882
10662
  # grants the Amazon ECS container agent permission to make Amazon Web
10883
- # Services API calls on your behalf. The task execution IAM role is
10884
- # required depending on the requirements of your task. For more
10885
- # information, see [Amazon ECS task execution IAM role][1] in the
10663
+ # Services API calls on your behalf. For informationabout the required
10664
+ # IAM roles for Amazon ECS, see [IAM roles for Amazon ECS][1] in the
10886
10665
  # *Amazon Elastic Container Service Developer Guide*.
10887
10666
  #
10888
10667
  #
10889
10668
  #
10890
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_execution_IAM_role.html
10669
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html
10891
10670
  # @return [String]
10892
10671
  #
10893
10672
  # @!attribute [rw] network_mode
@@ -10917,22 +10696,19 @@ module Aws::ECS
10917
10696
  # non-root user.
10918
10697
  #
10919
10698
  # If the network mode is `awsvpc`, the task is allocated an elastic
10920
- # network interface, and you must specify a NetworkConfiguration value
10921
- # when you create a service or run a task with the task definition.
10922
- # For more information, see [Task Networking][1] in the *Amazon
10923
- # Elastic Container Service Developer Guide*.
10699
+ # network interface, and you must specify a [NetworkConfiguration][1]
10700
+ # value when you create a service or run a task with the task
10701
+ # definition. For more information, see [Task Networking][2] in the
10702
+ # *Amazon Elastic Container Service Developer Guide*.
10924
10703
  #
10925
10704
  # If the network mode is `host`, you cannot run multiple
10926
10705
  # instantiations of the same task on a single container instance when
10927
10706
  # port mappings are used.
10928
10707
  #
10929
- # For more information, see [Network settings][2] in the *Docker run
10930
- # reference*.
10931
10708
  #
10932
10709
  #
10933
- #
10934
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
10935
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
10710
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
10711
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
10936
10712
  # @return [String]
10937
10713
  #
10938
10714
  # @!attribute [rw] revision
@@ -11028,6 +10804,10 @@ module Aws::ECS
11028
10804
  # one of the following values. The value that you choose determines
11029
10805
  # your range of valid values for the `memory` parameter.
11030
10806
  #
10807
+ # If you use the EC2 launch type, this field is optional. Supported
10808
+ # values are between `128` CPU units (`0.125` vCPUs) and `10240` CPU
10809
+ # units (`10` vCPUs).
10810
+ #
11031
10811
  # The CPU units cannot be less than 1 vCPU when you use Windows
11032
10812
  # containers on Fargate.
11033
10813
  #
@@ -11121,12 +10901,10 @@ module Aws::ECS
11121
10901
  # share the same process namespace.
11122
10902
  #
11123
10903
  # If no value is specified, the default is a private namespace for
11124
- # each container. For more information, see [PID settings][1] in the
11125
- # *Docker run reference*.
10904
+ # each container.
11126
10905
  #
11127
10906
  # If the `host` PID mode is used, there's a heightened risk of
11128
- # undesired process namespace exposure. For more information, see
11129
- # [Docker security][2].
10907
+ # undesired process namespace exposure.
11130
10908
  #
11131
10909
  # <note markdown="1"> This parameter is not supported for Windows containers.
11132
10910
  #
@@ -11137,11 +10915,6 @@ module Aws::ECS
11137
10915
  # (Linux). This isn't supported for Windows containers on Fargate.
11138
10916
  #
11139
10917
  # </note>
11140
- #
11141
- #
11142
- #
11143
- # [1]: https://docs.docker.com/engine/reference/run/#pid-settings---pid
11144
- # [2]: https://docs.docker.com/engine/security/security/
11145
10918
  # @return [String]
11146
10919
  #
11147
10920
  # @!attribute [rw] ipc_mode
@@ -11155,17 +10928,15 @@ module Aws::ECS
11155
10928
  # containers of a task are private and not shared with other
11156
10929
  # containers in a task or on the container instance. If no value is
11157
10930
  # specified, then the IPC resource namespace sharing depends on the
11158
- # Docker daemon setting on the container instance. For more
11159
- # information, see [IPC settings][1] in the *Docker run reference*.
10931
+ # Docker daemon setting on the container instance.
11160
10932
  #
11161
10933
  # If the `host` IPC mode is used, be aware that there is a heightened
11162
- # risk of undesired IPC namespace expose. For more information, see
11163
- # [Docker security][2].
10934
+ # risk of undesired IPC namespace expose.
11164
10935
  #
11165
10936
  # If you are setting namespaced kernel parameters using
11166
10937
  # `systemControls` for the containers in the task, the following will
11167
10938
  # apply to your IPC resource namespace. For more information, see
11168
- # [System Controls][3] in the *Amazon Elastic Container Service
10939
+ # [System Controls][1] in the *Amazon Elastic Container Service
11169
10940
  # Developer Guide*.
11170
10941
  #
11171
10942
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -11181,9 +10952,7 @@ module Aws::ECS
11181
10952
  #
11182
10953
  #
11183
10954
  #
11184
- # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
11185
- # [2]: https://docs.docker.com/engine/security/security/
11186
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
10955
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
11187
10956
  # @return [String]
11188
10957
  #
11189
10958
  # @!attribute [rw] proxy_configuration
@@ -11944,7 +11713,7 @@ module Aws::ECS
11944
11713
  # values set by the operating system with the exception of the `nofile`
11945
11714
  # resource limit parameter which Fargate overrides. The `nofile`
11946
11715
  # resource limit sets a restriction on the number of open files that a
11947
- # container can use. The default `nofile` soft limit is `1024` and the
11716
+ # container can use. The default `nofile` soft limit is ` 65535` and the
11948
11717
  # default hard limit is `65535`.
11949
11718
  #
11950
11719
  # You can specify the `ulimit` settings for a container in a task