aws-sdk-ecs 1.151.0 → 1.157.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -125,8 +125,13 @@ module Aws::ECS
125
125
  end
126
126
 
127
127
  # You can apply up to 10 custom attributes for each resource. You can
128
- # view the attributes of a resource with ListAttributes. You can remove
129
- # existing attributes on a resource with DeleteAttributes.
128
+ # view the attributes of a resource with [ListAttributes][1]. You can
129
+ # remove existing attributes on a resource with [DeleteAttributes][2].
130
+ #
131
+ #
132
+ #
133
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListAttributes.html
134
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteAttributes.html
130
135
  #
131
136
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/AttributeLimitExceededException AWS API Documentation
132
137
  #
@@ -237,12 +242,12 @@ module Aws::ECS
237
242
 
238
243
  # An object representing the networking details for a task or service.
239
244
  # For example
240
- # `awsvpcConfiguration=\{subnets=["subnet-12344321"],securityGroups=["sg-12344321"]\}`
245
+ # `awsVpcConfiguration=\{subnets=["subnet-12344321"],securityGroups=["sg-12344321"]\}`.
241
246
  #
242
247
  # @!attribute [rw] subnets
243
248
  # The IDs of the subnets associated with the task or service. There's
244
249
  # a limit of 16 subnets that can be specified per
245
- # `AwsVpcConfiguration`.
250
+ # `awsvpcConfiguration`.
246
251
  #
247
252
  # <note markdown="1"> All specified subnets must be from the same VPC.
248
253
  #
@@ -253,7 +258,7 @@ module Aws::ECS
253
258
  # The IDs of the security groups associated with the task or service.
254
259
  # If you don't specify a security group, the default security group
255
260
  # for the VPC is used. There's a limit of 5 security groups that can
256
- # be specified per `AwsVpcConfiguration`.
261
+ # be specified per `awsvpcConfiguration`.
257
262
  #
258
263
  # <note markdown="1"> All specified security groups must be from the same VPC.
259
264
  #
@@ -377,19 +382,19 @@ module Aws::ECS
377
382
  end
378
383
 
379
384
  # The details of a capacity provider strategy. A capacity provider
380
- # strategy can be set when using the RunTask or CreateCluster APIs or as
381
- # the default capacity provider strategy for a cluster with the
382
- # CreateCluster API.
385
+ # strategy can be set when using the [RunTask][1]or [CreateCluster][2]
386
+ # APIs or as the default capacity provider strategy for a cluster with
387
+ # the `CreateCluster` API.
383
388
  #
384
389
  # Only capacity providers that are already associated with a cluster and
385
390
  # have an `ACTIVE` or `UPDATING` status can be used in a capacity
386
- # provider strategy. The PutClusterCapacityProviders API is used to
391
+ # provider strategy. The [PutClusterCapacityProviders][3] API is used to
387
392
  # associate a capacity provider with a cluster.
388
393
  #
389
394
  # If specifying a capacity provider that uses an Auto Scaling group, the
390
395
  # capacity provider must already be created. New Auto Scaling group
391
- # capacity providers can be created with the CreateCapacityProvider API
392
- # operation.
396
+ # capacity providers can be created with the
397
+ # [CreateClusterCapacityProvider][4] API operation.
393
398
  #
394
399
  # To use a Fargate capacity provider, specify either the `FARGATE` or
395
400
  # `FARGATE_SPOT` capacity providers. The Fargate capacity providers are
@@ -406,6 +411,13 @@ module Aws::ECS
406
411
  # A capacity provider strategy may contain a maximum of 6 capacity
407
412
  # providers.
408
413
  #
414
+ #
415
+ #
416
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html
417
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCluster.html
418
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html
419
+ # [4]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateClusterCapacityProvider.html
420
+ #
409
421
  # @!attribute [rw] capacity_provider
410
422
  # The short name of the capacity provider.
411
423
  # @return [String]
@@ -456,6 +468,19 @@ module Aws::ECS
456
468
  # have permissions to use the action or resource. Or, it might be
457
469
  # specifying an identifier that isn't valid.
458
470
  #
471
+ # The following list includes additional causes for the error:
472
+ #
473
+ # * The `RunTask` could not be processed because you use managed scaling
474
+ # and there is a capacity error because the quota of tasks in the
475
+ # `PROVISIONING` per cluster has been reached. For information about
476
+ # the service quotas, see [Amazon ECS service quotas][1].
477
+ #
478
+ # ^
479
+ #
480
+ #
481
+ #
482
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-quotas.html
483
+ #
459
484
  # @!attribute [rw] message
460
485
  # Message that describes the cause of the exception.
461
486
  # @return [String]
@@ -540,7 +565,11 @@ module Aws::ECS
540
565
  #
541
566
  # @!attribute [rw] active_services_count
542
567
  # The number of services that are running on the cluster in an
543
- # `ACTIVE` state. You can view these services with ListServices.
568
+ # `ACTIVE` state. You can view these services with [PListServices][1].
569
+ #
570
+ #
571
+ #
572
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html
544
573
  # @return [Integer]
545
574
  #
546
575
  # @!attribute [rw] statistics
@@ -702,7 +731,11 @@ module Aws::ECS
702
731
 
703
732
  # You can't delete a cluster that has registered container instances.
704
733
  # First, deregister the container instances before you can delete the
705
- # cluster. For more information, see DeregisterContainerInstance.
734
+ # cluster. For more information, see [DeregisterContainerInstance][1].
735
+ #
736
+ #
737
+ #
738
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeregisterContainerInstance.html
706
739
  #
707
740
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ClusterContainsContainerInstancesException AWS API Documentation
708
741
  #
@@ -710,7 +743,13 @@ module Aws::ECS
710
743
 
711
744
  # You can't delete a cluster that contains services. First, update the
712
745
  # service to reduce its desired task count to 0, and then delete the
713
- # service. For more information, see UpdateService and DeleteService.
746
+ # service. For more information, see [UpdateService][1] and
747
+ # [DeleteService][2].
748
+ #
749
+ #
750
+ #
751
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html
752
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteService.html
714
753
  #
715
754
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ClusterContainsServicesException AWS API Documentation
716
755
  #
@@ -723,7 +762,12 @@ module Aws::ECS
723
762
  class ClusterContainsTasksException < Aws::EmptyStructure; end
724
763
 
725
764
  # The specified cluster wasn't found. You can view your available
726
- # clusters with ListClusters. Amazon ECS clusters are Region specific.
765
+ # clusters with [ListClusters][1]. Amazon ECS clusters are Region
766
+ # specific.
767
+ #
768
+ #
769
+ #
770
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListClusters.html
727
771
  #
728
772
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ClusterNotFoundException AWS API Documentation
729
773
  #
@@ -991,14 +1035,8 @@ module Aws::ECS
991
1035
  # entered in the `links` of another container to connect the
992
1036
  # containers. Up to 255 letters (uppercase and lowercase), numbers,
993
1037
  # 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
1038
+ # in tthe docker conainer create command and the `--name` option to
1039
+ # docker run.
1002
1040
  # @return [String]
1003
1041
  #
1004
1042
  # @!attribute [rw] image
@@ -1008,9 +1046,8 @@ module Aws::ECS
1008
1046
  # repository-url/image:tag ` or ` repository-url/image@digest `. Up to
1009
1047
  # 255 letters (uppercase and lowercase), numbers, hyphens,
1010
1048
  # 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].
1049
+ # allowed. This parameter maps to `Image` in the docker conainer
1050
+ # create command and the `IMAGE` parameter of docker run.
1014
1051
  #
1015
1052
  # * When a new task starts, the Amazon ECS container agent pulls the
1016
1053
  # latest version of the specified image and tag for the container to
@@ -1032,12 +1069,6 @@ module Aws::ECS
1032
1069
  #
1033
1070
  # * Images in other online repositories are qualified further by a
1034
1071
  # 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
1072
  # @return [String]
1042
1073
  #
1043
1074
  # @!attribute [rw] repository_credentials
@@ -1046,9 +1077,8 @@ module Aws::ECS
1046
1077
  #
1047
1078
  # @!attribute [rw] cpu
1048
1079
  # 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].
1080
+ # maps to `CpuShares` in the docker conainer create commandand the
1081
+ # `--cpu-shares` option to docker run.
1052
1082
  #
1053
1083
  # This field is optional for tasks using the Fargate launch type, and
1054
1084
  # the only requirement is that the total amount of CPU reserved for
@@ -1057,7 +1087,7 @@ module Aws::ECS
1057
1087
  #
1058
1088
  # <note markdown="1"> You can determine the number of CPU units that are available per EC2
1059
1089
  # instance type by multiplying the vCPUs listed for that instance type
1060
- # on the [Amazon EC2 Instances][4] detail page by 1,024.
1090
+ # on the [Amazon EC2 Instances][1] detail page by 1,024.
1061
1091
  #
1062
1092
  # </note>
1063
1093
  #
@@ -1076,13 +1106,13 @@ module Aws::ECS
1076
1106
  #
1077
1107
  # On Linux container instances, the Docker daemon on the container
1078
1108
  # 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:
1109
+ # ratios for running containers. The minimum valid CPU share value
1110
+ # that the Linux kernel allows is 2, and the maximum valid CPU share
1111
+ # value that the Linux kernel allows is 262144. However, the CPU
1112
+ # parameter isn't required, and you can use CPU values below 2 or
1113
+ # above 262144 in your container definitions. For CPU values below 2
1114
+ # (including null) or above 262144, the behavior varies based on your
1115
+ # Amazon ECS container agent version:
1086
1116
  #
1087
1117
  # * **Agent versions less than or equal to 1.1.0:** Null and zero CPU
1088
1118
  # values are passed to Docker as 0, which Docker then converts to
@@ -1092,6 +1122,10 @@ module Aws::ECS
1092
1122
  # * **Agent versions greater than or equal to 1.2.0:** Null, zero, and
1093
1123
  # CPU values of 1 are passed to Docker as 2.
1094
1124
  #
1125
+ # * **Agent versions greater than or equal to 1.84.0:** CPU values
1126
+ # greater than 256 vCPU are passed to Docker as 256, which is
1127
+ # equivalent to 262144 CPU shares.
1128
+ #
1095
1129
  # On Windows container instances, the CPU limit is enforced as an
1096
1130
  # absolute limit, or a quota. Windows containers only have access to
1097
1131
  # the specified amount of CPU that's described in the task
@@ -1100,11 +1134,7 @@ module Aws::ECS
1100
1134
  #
1101
1135
  #
1102
1136
  #
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
1137
+ # [1]: http://aws.amazon.com/ec2/instance-types/
1108
1138
  # @return [Integer]
1109
1139
  #
1110
1140
  # @!attribute [rw] memory
@@ -1112,9 +1142,9 @@ module Aws::ECS
1112
1142
  # container attempts to exceed the memory specified here, the
1113
1143
  # container is killed. The total amount of memory reserved for all
1114
1144
  # 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].
1145
+ # if one is specified. This parameter maps to `Memory` in thethe
1146
+ # docker conainer create command and the `--memory` option to docker
1147
+ # run.
1118
1148
  #
1119
1149
  # If using the Fargate launch type, this parameter is optional.
1120
1150
  #
@@ -1133,12 +1163,6 @@ module Aws::ECS
1133
1163
  # The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB
1134
1164
  # of memory for a container. So, don't specify less than 4 MiB of
1135
1165
  # 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
1166
  # @return [Integer]
1143
1167
  #
1144
1168
  # @!attribute [rw] memory_reservation
@@ -1148,9 +1172,9 @@ module Aws::ECS
1148
1172
  # consume more memory when it needs to, up to either the hard limit
1149
1173
  # specified with the `memory` parameter (if applicable), or all of the
1150
1174
  # 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].
1175
+ # This parameter maps to `MemoryReservation` in the the docker
1176
+ # conainer create command and the `--memory-reservation` option to
1177
+ # docker run.
1154
1178
  #
1155
1179
  # If a task-level memory value is not specified, you must specify a
1156
1180
  # non-zero integer for one or both of `memory` or `memoryReservation`
@@ -1175,12 +1199,6 @@ module Aws::ECS
1175
1199
  # The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB
1176
1200
  # of memory for a container. So, don't specify less than 4 MiB of
1177
1201
  # 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
1202
  # @return [Integer]
1185
1203
  #
1186
1204
  # @!attribute [rw] links
@@ -1189,11 +1207,9 @@ module Aws::ECS
1189
1207
  # supported if the network mode of a task definition is `bridge`. The
1190
1208
  # `name:internalName` construct is analogous to `name:alias` in Docker
1191
1209
  # 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].
1210
+ # underscores, and hyphens are allowed.. This parameter maps to
1211
+ # `Links` in the docker conainer create command and the `--link`
1212
+ # option to docker run.
1197
1213
  #
1198
1214
  # <note markdown="1"> This parameter is not supported for Windows containers.
1199
1215
  #
@@ -1203,13 +1219,6 @@ module Aws::ECS
1203
1219
  # able to communicate with each other without requiring links or host
1204
1220
  # port mappings. Network isolation is achieved on the container
1205
1221
  # 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
1222
  # @return [Array<String>]
1214
1223
  #
1215
1224
  # @!attribute [rw] port_mappings
@@ -1226,27 +1235,24 @@ module Aws::ECS
1226
1235
  # so you can't access a container's mapped port from the host
1227
1236
  # itself.
1228
1237
  #
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.
1238
+ # This parameter maps to `PortBindings` in the the docker conainer
1239
+ # create command and the `--publish` option to docker run. If the
1240
+ # network mode of a task definition is set to `none`, then you can't
1241
+ # specify port mappings. If the network mode of a task definition is
1242
+ # set to `host`, then host ports must either be undefined or they must
1243
+ # match the container port in the port mapping.
1236
1244
  #
1237
1245
  # <note markdown="1"> After a task reaches the `RUNNING` status, manual and automatic host
1238
1246
  # and container port assignments are visible in the **Network
1239
1247
  # Bindings** section of a container description for a selected task in
1240
1248
  # the Amazon ECS console. The assignments are also visible in the
1241
- # `networkBindings` section DescribeTasks responses.
1249
+ # `networkBindings` section [DescribeTasks][1] responses.
1242
1250
  #
1243
1251
  # </note>
1244
1252
  #
1245
1253
  #
1246
1254
  #
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
1255
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html
1250
1256
  # @return [Array<Types::PortMapping>]
1251
1257
  #
1252
1258
  # @!attribute [rw] essential
@@ -1269,6 +1275,18 @@ module Aws::ECS
1269
1275
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html
1270
1276
  # @return [Boolean]
1271
1277
  #
1278
+ # @!attribute [rw] restart_policy
1279
+ # The restart policy for a container. When you set up a restart
1280
+ # policy, Amazon ECS can restart the container without needing to
1281
+ # replace the task. For more information, see [Restart individual
1282
+ # containers in Amazon ECS tasks with container restart policies][1]
1283
+ # in the *Amazon Elastic Container Service Developer Guide*.
1284
+ #
1285
+ #
1286
+ #
1287
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html
1288
+ # @return [Types::ContainerRestartPolicy]
1289
+ #
1272
1290
  # @!attribute [rw] entry_point
1273
1291
  # Early versions of the Amazon ECS container agent don't properly
1274
1292
  # handle `entryPoint` parameters. If you have problems using
@@ -1276,62 +1294,35 @@ module Aws::ECS
1276
1294
  # arguments as `command` array items instead.
1277
1295
  #
1278
1296
  # 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
1297
+ # to `Entrypoint` in tthe docker conainer create command and the
1298
+ # `--entrypoint` option to docker run.
1290
1299
  # @return [Array<String>]
1291
1300
  #
1292
1301
  # @!attribute [rw] command
1293
1302
  # 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
1303
+ # `Cmd` in the docker conainer create command and the `COMMAND`
1304
+ # parameter to docker run. If there are multiple arguments, each
1305
+ # argument is a separated string in the array.
1307
1306
  # @return [Array<String>]
1308
1307
  #
1309
1308
  # @!attribute [rw] environment
1310
1309
  # 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].
1310
+ # maps to `Env` in the docker conainer create command and the `--env`
1311
+ # option to docker run.
1313
1312
  #
1314
1313
  # We don't recommend that you use plaintext environment variables for
1315
1314
  # 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
1315
  # @return [Array<Types::KeyValuePair>]
1323
1316
  #
1324
1317
  # @!attribute [rw] environment_files
1325
1318
  # 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].
1319
+ # container. This parameter maps to the `--env-file` option to docker
1320
+ # run.
1328
1321
  #
1329
1322
  # You can specify up to ten environment files. The file must have a
1330
1323
  # `.env` file extension. Each line in an environment file contains an
1331
1324
  # 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].
1325
+ # with `#` are treated as comments and are ignored.
1335
1326
  #
1336
1327
  # If there are environment variables specified using the `environment`
1337
1328
  # parameter in a container definition, they take precedence over the
@@ -1339,54 +1330,43 @@ module Aws::ECS
1339
1330
  # environment files are specified that contain the same variable,
1340
1331
  # they're processed from the top down. We recommend that you use
1341
1332
  # unique variable names. For more information, see [Specifying
1342
- # Environment Variables][3] in the *Amazon Elastic Container Service
1333
+ # Environment Variables][1] in the *Amazon Elastic Container Service
1343
1334
  # Developer Guide*.
1344
1335
  #
1345
1336
  #
1346
1337
  #
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
1338
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html
1350
1339
  # @return [Array<Types::EnvironmentFile>]
1351
1340
  #
1352
1341
  # @!attribute [rw] mount_points
1353
1342
  # The mount points for data volumes in your container.
1354
1343
  #
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].
1344
+ # This parameter maps to `Volumes` in the the docker conainer create
1345
+ # command and the `--volume` option to docker run.
1358
1346
  #
1359
1347
  # Windows containers can mount whole directories on the same drive as
1360
1348
  # `$env:ProgramData`. Windows containers can't mount directories on a
1361
1349
  # 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
1350
  # @return [Array<Types::MountPoint>]
1369
1351
  #
1370
1352
  # @!attribute [rw] volumes_from
1371
1353
  # 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
1354
+ # `VolumesFrom` in tthe docker conainer create command and the
1355
+ # `--volumes-from` option to docker run.
1380
1356
  # @return [Array<Types::VolumeFrom>]
1381
1357
  #
1382
1358
  # @!attribute [rw] linux_parameters
1383
1359
  # Linux-specific modifications that are applied to the container, such
1384
1360
  # as Linux kernel capabilities. For more information see
1385
- # KernelCapabilities.
1361
+ # [KernelCapabilities][1].
1386
1362
  #
1387
1363
  # <note markdown="1"> This parameter is not supported for Windows containers.
1388
1364
  #
1389
1365
  # </note>
1366
+ #
1367
+ #
1368
+ #
1369
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_KernelCapabilities.html
1390
1370
  # @return [Types::LinuxParameters]
1391
1371
  #
1392
1372
  # @!attribute [rw] secrets
@@ -1469,7 +1449,7 @@ module Aws::ECS
1469
1449
  # [Amazon ECS-optimized Linux AMI][2] in the *Amazon Elastic Container
1470
1450
  # Service Developer Guide*.
1471
1451
  #
1472
- # The valid values are 2-120 seconds.
1452
+ # The valid values for Fargate are 2-120 seconds.
1473
1453
  #
1474
1454
  #
1475
1455
  #
@@ -1521,25 +1501,19 @@ module Aws::ECS
1521
1501
  #
1522
1502
  # @!attribute [rw] hostname
1523
1503
  # 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].
1504
+ # `Hostname` in thethe docker conainer create command and the
1505
+ # `--hostname` option to docker run.
1526
1506
  #
1527
1507
  # <note markdown="1"> The `hostname` parameter is not supported if you're using the
1528
1508
  # `awsvpc` network mode.
1529
1509
  #
1530
1510
  # </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
1511
  # @return [String]
1538
1512
  #
1539
1513
  # @!attribute [rw] user
1540
1514
  # 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].
1515
+ # in the docker conainer create command and the `--user` option to
1516
+ # docker run.
1543
1517
  #
1544
1518
  # When running tasks using the `host` network mode, don't run
1545
1519
  # containers using the root user (UID 0). We recommend using a
@@ -1563,135 +1537,83 @@ module Aws::ECS
1563
1537
  # <note markdown="1"> This parameter is not supported for Windows containers.
1564
1538
  #
1565
1539
  # </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
1540
  # @return [String]
1573
1541
  #
1574
1542
  # @!attribute [rw] working_directory
1575
1543
  # 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
1544
+ # parameter maps to `WorkingDir` in the docker conainer create command
1545
+ # and the `--workdir` option to docker run.
1585
1546
  # @return [String]
1586
1547
  #
1587
1548
  # @!attribute [rw] disable_networking
1588
1549
  # 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].
1550
+ # This parameter maps to `NetworkDisabled` in the docker conainer
1551
+ # create command.
1591
1552
  #
1592
1553
  # <note markdown="1"> This parameter is not supported for Windows containers.
1593
1554
  #
1594
1555
  # </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
1556
  # @return [Boolean]
1601
1557
  #
1602
1558
  # @!attribute [rw] privileged
1603
1559
  # When this parameter is true, the container is given elevated
1604
1560
  # 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].
1561
+ # user). This parameter maps to `Privileged` in the the docker
1562
+ # conainer create command and the `--privileged` option to docker run
1608
1563
  #
1609
1564
  # <note markdown="1"> This parameter is not supported for Windows containers or tasks run
1610
1565
  # on Fargate.
1611
1566
  #
1612
1567
  # </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
1568
  # @return [Boolean]
1620
1569
  #
1621
1570
  # @!attribute [rw] readonly_root_filesystem
1622
1571
  # When this parameter is true, the container is given read-only access
1623
1572
  # 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].
1573
+ # the docker conainer create command and the `--read-only` option to
1574
+ # docker run.
1626
1575
  #
1627
1576
  # <note markdown="1"> This parameter is not supported for Windows containers.
1628
1577
  #
1629
1578
  # </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
1579
  # @return [Boolean]
1637
1580
  #
1638
1581
  # @!attribute [rw] dns_servers
1639
1582
  # 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].
1583
+ # parameter maps to `Dns` in the the docker conainer create command
1584
+ # and the `--dns` option to docker run.
1643
1585
  #
1644
1586
  # <note markdown="1"> This parameter is not supported for Windows containers.
1645
1587
  #
1646
1588
  # </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
1589
  # @return [Array<String>]
1654
1590
  #
1655
1591
  # @!attribute [rw] dns_search_domains
1656
1592
  # 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].
1593
+ # This parameter maps to `DnsSearch` in the docker conainer create
1594
+ # command and the `--dns-search` option to docker run.
1660
1595
  #
1661
1596
  # <note markdown="1"> This parameter is not supported for Windows containers.
1662
1597
  #
1663
1598
  # </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
1599
  # @return [Array<String>]
1671
1600
  #
1672
1601
  # @!attribute [rw] extra_hosts
1673
1602
  # A list of hostnames and IP address mappings to append to the
1674
1603
  # `/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].
1604
+ # `ExtraHosts` in the docker conainer create command and the
1605
+ # `--add-host` option to docker run.
1677
1606
  #
1678
1607
  # <note markdown="1"> This parameter isn't supported for Windows containers or tasks that
1679
1608
  # use the `awsvpc` network mode.
1680
1609
  #
1681
1610
  # </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
1611
  # @return [Array<Types::HostEntry>]
1689
1612
  #
1690
1613
  # @!attribute [rw] docker_security_options
1691
1614
  # 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.
1615
+ # security systems. This field isn't valid for containers in tasks
1616
+ # using the Fargate launch type.
1695
1617
  #
1696
1618
  # For Linux tasks on EC2, this parameter can be used to reference
1697
1619
  # custom labels for SELinux and AppArmor multi-level security systems.
@@ -1699,95 +1621,67 @@ module Aws::ECS
1699
1621
  # For any tasks on EC2, this parameter can be used to reference a
1700
1622
  # credential spec file that configures a container for Active
1701
1623
  # Directory authentication. For more information, see [Using gMSAs for
1702
- # Windows Containers][2] and [Using gMSAs for Linux Containers][3] in
1624
+ # Windows Containers][1] and [Using gMSAs for Linux Containers][2] in
1703
1625
  # the *Amazon Elastic Container Service Developer Guide*.
1704
1626
  #
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].
1627
+ # This parameter maps to `SecurityOpt` in the docker conainer create
1628
+ # command and the `--security-opt` option to docker run.
1708
1629
  #
1709
1630
  # <note markdown="1"> The Amazon ECS container agent running on a container instance must
1710
1631
  # register with the `ECS_SELINUX_CAPABLE=true` or
1711
1632
  # `ECS_APPARMOR_CAPABLE=true` environment variables before containers
1712
1633
  # placed on that instance can use these security options. For more
1713
- # information, see [Amazon ECS Container Agent Configuration][6] in
1634
+ # information, see [Amazon ECS Container Agent Configuration][3] in
1714
1635
  # the *Amazon Elastic Container Service Developer Guide*.
1715
1636
  #
1716
1637
  # </note>
1717
1638
  #
1718
- # For more information about valid values, see [Docker Run Security
1719
- # Configuration][1].
1720
- #
1721
1639
  # Valid values: "no-new-privileges" \| "apparmor:PROFILE" \|
1722
1640
  # "label:value" \| "credentialspec:CredentialSpecFilePath"
1723
1641
  #
1724
1642
  #
1725
1643
  #
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
1644
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html
1645
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html
1646
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1732
1647
  # @return [Array<String>]
1733
1648
  #
1734
1649
  # @!attribute [rw] interactive
1735
1650
  # When this parameter is `true`, you can deploy containerized
1736
1651
  # 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
1652
+ # parameter maps to `OpenStdin` in the docker conainer create command
1653
+ # and the `--interactive` option to docker run.
1746
1654
  # @return [Boolean]
1747
1655
  #
1748
1656
  # @!attribute [rw] pseudo_terminal
1749
1657
  # 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
1658
+ # maps to `Tty` in tthe docker conainer create command and the `--tty`
1659
+ # option to docker run.
1758
1660
  # @return [Boolean]
1759
1661
  #
1760
1662
  # @!attribute [rw] docker_labels
1761
1663
  # 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
1664
+ # maps to `Labels` in the docker conainer create command and the
1665
+ # `--label` option to docker run. This parameter requires version 1.18
1666
+ # of the Docker Remote API or greater on your container instance. To
1667
+ # check the Docker Remote API version on your container instance, log
1668
+ # in to your container instance and run the following command: `sudo
1669
+ # docker version --format '\{\{.Server.APIVersion\}\}'`
1775
1670
  # @return [Hash<String,String>]
1776
1671
  #
1777
1672
  # @!attribute [rw] ulimits
1778
1673
  # A list of `ulimits` to set in the container. If a `ulimit` value is
1779
1674
  # 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.
1675
+ # by Docker. This parameter maps to `Ulimits` in tthe docker conainer
1676
+ # create command and the `--ulimit` option to docker run. Valid naming
1677
+ # values are displayed in the [Ulimit][1] data type.
1784
1678
  #
1785
1679
  # Amazon ECS tasks hosted on Fargate use the default resource limit
1786
1680
  # values set by the operating system with the exception of the
1787
1681
  # `nofile` resource limit parameter which Fargate overrides. The
1788
1682
  # `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`.
1683
+ # files that a container can use. The default `nofile` soft limit is `
1684
+ # 65535` and the default hard limit is `65535`.
1791
1685
  #
1792
1686
  # This parameter requires version 1.18 of the Docker Remote API or
1793
1687
  # greater on your container instance. To check the Docker Remote API
@@ -1801,30 +1695,26 @@ module Aws::ECS
1801
1695
  #
1802
1696
  #
1803
1697
  #
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
1698
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_Ulimit.html
1807
1699
  # @return [Array<Types::Ulimit>]
1808
1700
  #
1809
1701
  # @!attribute [rw] log_configuration
1810
1702
  # The log configuration specification for the container.
1811
1703
  #
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.
1704
+ # This parameter maps to `LogConfig` in the docker conainer create
1705
+ # command and the `--log-driver` option to docker run. By default,
1706
+ # containers use the same logging driver that the Docker daemon uses.
1707
+ # However the container can use a different logging driver than the
1708
+ # Docker daemon by specifying a log driver with this parameter in the
1709
+ # container definition. To use a different logging driver for a
1710
+ # container, the log system must be configured properly on the
1711
+ # container instance (or on a different log server for remote logging
1712
+ # options).
1823
1713
  #
1824
1714
  # <note markdown="1"> Amazon ECS currently supports a subset of the logging drivers
1825
- # available to the Docker daemon (shown in the LogConfiguration data
1826
- # type). Additional log drivers may be available in future releases of
1827
- # the Amazon ECS container agent.
1715
+ # available to the Docker daemon (shown in the [LogConfiguration][1]
1716
+ # data type). Additional log drivers may be available in future
1717
+ # releases of the Amazon ECS container agent.
1828
1718
  #
1829
1719
  # </note>
1830
1720
  #
@@ -1839,46 +1729,30 @@ module Aws::ECS
1839
1729
  # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
1840
1730
  # containers placed on that instance can use these log configuration
1841
1731
  # options. For more information, see [Amazon ECS Container Agent
1842
- # Configuration][5] in the *Amazon Elastic Container Service Developer
1732
+ # Configuration][2] in the *Amazon Elastic Container Service Developer
1843
1733
  # Guide*.
1844
1734
  #
1845
1735
  # </note>
1846
1736
  #
1847
1737
  #
1848
1738
  #
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
1739
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html
1740
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1854
1741
  # @return [Types::LogConfiguration]
1855
1742
  #
1856
1743
  # @!attribute [rw] health_check
1857
1744
  # The container health check command and associated configuration
1858
1745
  # 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
1746
+ # in the docker conainer create command and the `HEALTHCHECK`
1747
+ # parameter of docker run.
1867
1748
  # @return [Types::HealthCheck]
1868
1749
  #
1869
1750
  # @!attribute [rw] system_controls
1870
1751
  # 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
1752
+ # parameter maps to `Sysctls` in tthe docker conainer create command
1753
+ # and the `--sysctl` option to docker run. For example, you can
1754
+ # configure `net.ipv4.tcp_keepalive_time` setting to maintain longer
1755
+ # lived connections.
1882
1756
  # @return [Array<Types::SystemControl>]
1883
1757
  #
1884
1758
  # @!attribute [rw] resource_requirements
@@ -1955,6 +1829,7 @@ module Aws::ECS
1955
1829
  :links,
1956
1830
  :port_mappings,
1957
1831
  :essential,
1832
+ :restart_policy,
1958
1833
  :entry_point,
1959
1834
  :command,
1960
1835
  :environment,
@@ -2185,7 +2060,11 @@ module Aws::ECS
2185
2060
  # @!attribute [rw] attributes
2186
2061
  # The attributes set for the container instance, either by the Amazon
2187
2062
  # ECS container agent at instance registration or manually with the
2188
- # PutAttributes operation.
2063
+ # [PutAttributes][1] operation.
2064
+ #
2065
+ #
2066
+ #
2067
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAttributes.html
2189
2068
  # @return [Array<Types::Attribute>]
2190
2069
  #
2191
2070
  # @!attribute [rw] registered_at
@@ -2357,6 +2236,48 @@ module Aws::ECS
2357
2236
  include Aws::Structure
2358
2237
  end
2359
2238
 
2239
+ # You can enable a restart policy for each container defined in your
2240
+ # task definition, to overcome transient failures faster and maintain
2241
+ # task availability. When you enable a restart policy for a container,
2242
+ # Amazon ECS can restart the container if it exits, without needing to
2243
+ # replace the task. For more information, see [Restart individual
2244
+ # containers in Amazon ECS tasks with container restart policies][1] in
2245
+ # the *Amazon Elastic Container Service Developer Guide*.
2246
+ #
2247
+ #
2248
+ #
2249
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html
2250
+ #
2251
+ # @!attribute [rw] enabled
2252
+ # Specifies whether a restart policy is enabled for the container.
2253
+ # @return [Boolean]
2254
+ #
2255
+ # @!attribute [rw] ignored_exit_codes
2256
+ # A list of exit codes that Amazon ECS will ignore and not attempt a
2257
+ # restart on. You can specify a maximum of 50 container exit codes. By
2258
+ # default, Amazon ECS does not ignore any exit codes.
2259
+ # @return [Array<Integer>]
2260
+ #
2261
+ # @!attribute [rw] restart_attempt_period
2262
+ # A period of time (in seconds) that the container must run for before
2263
+ # a restart can be attempted. A container can be restarted only once
2264
+ # every `restartAttemptPeriod` seconds. If a container isn't able to
2265
+ # run for this time period and exits early, it will not be restarted.
2266
+ # You can set a minimum `restartAttemptPeriod` of 60 seconds and a
2267
+ # maximum `restartAttemptPeriod` of 1800 seconds. By default, a
2268
+ # container must run for 300 seconds before it can be restarted.
2269
+ # @return [Integer]
2270
+ #
2271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerRestartPolicy AWS API Documentation
2272
+ #
2273
+ class ContainerRestartPolicy < Struct.new(
2274
+ :enabled,
2275
+ :ignored_exit_codes,
2276
+ :restart_attempt_period)
2277
+ SENSITIVE = []
2278
+ include Aws::Structure
2279
+ end
2280
+
2360
2281
  # An object that represents a change in state for a container.
2361
2282
  #
2362
2283
  # @!attribute [rw] container_name
@@ -2508,7 +2429,12 @@ module Aws::ECS
2508
2429
  # The setting to use when creating a cluster. This parameter is used
2509
2430
  # to turn on CloudWatch Container Insights for a cluster. If this
2510
2431
  # value is specified, it overrides the `containerInsights` value set
2511
- # with PutAccountSetting or PutAccountSettingDefault.
2432
+ # with [PutAccountSetting][1] or [PutAccountSettingDefault][2].
2433
+ #
2434
+ #
2435
+ #
2436
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSetting.html
2437
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSettingDefault.html
2512
2438
  # @return [Array<Types::ClusterSetting>]
2513
2439
  #
2514
2440
  # @!attribute [rw] configuration
@@ -2553,12 +2479,13 @@ module Aws::ECS
2553
2479
  #
2554
2480
  # If a default capacity provider strategy isn't defined for a cluster
2555
2481
  # when it was created, it can be defined later with the
2556
- # PutClusterCapacityProviders API operation.
2482
+ # [PutClusterCapacityProviders][3] API operation.
2557
2483
  #
2558
2484
  #
2559
2485
  #
2560
2486
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html
2561
2487
  # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html
2488
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html
2562
2489
  # @return [Array<Types::CapacityProviderStrategyItem>]
2563
2490
  #
2564
2491
  # @!attribute [rw] service_connect_defaults
@@ -3124,9 +3051,10 @@ module Aws::ECS
3124
3051
  # A capacity provider strategy consists of one or more capacity
3125
3052
  # providers along with the `base` and `weight` to assign to them. A
3126
3053
  # capacity provider must be associated with the cluster to be used in
3127
- # a capacity provider strategy. The PutClusterCapacityProviders API is
3128
- # used to associate a capacity provider with a cluster. Only capacity
3129
- # providers with an `ACTIVE` or `UPDATING` status can be used.
3054
+ # a capacity provider strategy. The [PutClusterCapacityProviders][1]
3055
+ # API is used to associate a capacity provider with a cluster. Only
3056
+ # capacity providers with an `ACTIVE` or `UPDATING` status can be
3057
+ # used.
3130
3058
  #
3131
3059
  # If a `capacityProviderStrategy` is specified, the `launchType`
3132
3060
  # parameter must be omitted. If no `capacityProviderStrategy` or
@@ -3135,17 +3063,22 @@ module Aws::ECS
3135
3063
  #
3136
3064
  # If specifying a capacity provider that uses an Auto Scaling group,
3137
3065
  # the capacity provider must already be created. New capacity
3138
- # providers can be created with the CreateCapacityProvider API
3139
- # operation.
3066
+ # providers can be created with the
3067
+ # [CreateCapacityProviderProvider][2]API operation.
3140
3068
  #
3141
3069
  # To use a Fargate capacity provider, specify either the `FARGATE` or
3142
3070
  # `FARGATE_SPOT` capacity providers. The Fargate capacity providers
3143
3071
  # are available to all accounts and only need to be associated with a
3144
3072
  # cluster to be used.
3145
3073
  #
3146
- # The PutClusterCapacityProviders API operation is used to update the
3147
- # list of available capacity providers for a cluster after the cluster
3148
- # is created.
3074
+ # The [PutClusterCapacityProviders][1] API operation is used to update
3075
+ # the list of available capacity providers for a cluster after the
3076
+ # cluster is created.
3077
+ #
3078
+ #
3079
+ #
3080
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html
3081
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCapacityProviderProvider.html
3149
3082
  # @return [Array<Types::CapacityProviderStrategyItem>]
3150
3083
  #
3151
3084
  # @!attribute [rw] platform_version
@@ -3593,7 +3526,11 @@ module Aws::ECS
3593
3526
  # state. If the service fails to reach a steady state and circuit
3594
3527
  # breaker is turned on, the deployment transitions to a `FAILED`
3595
3528
  # state. A deployment in `FAILED` state doesn't launch any new tasks.
3596
- # For more information, see DeploymentCircuitBreaker.
3529
+ # For more information, see [DeploymentCircuitBreaker][1].
3530
+ #
3531
+ #
3532
+ #
3533
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeploymentCircuitBreaker.html
3597
3534
  # @return [String]
3598
3535
  #
3599
3536
  # @!attribute [rw] rollout_state_reason
@@ -3907,7 +3844,8 @@ module Aws::ECS
3907
3844
  # The number of containers Amazon ECS adds or removes from the
3908
3845
  # service during a rolling update is controlled by adjusting the
3909
3846
  # minimum and maximum number of healthy tasks allowed during a
3910
- # service deployment, as specified in the DeploymentConfiguration.
3847
+ # service deployment, as specified in the
3848
+ # [DeploymentConfiguration][1].
3911
3849
  #
3912
3850
  # CODE\_DEPLOY
3913
3851
  #
@@ -3921,6 +3859,10 @@ module Aws::ECS
3921
3859
  # : The external (`EXTERNAL`) deployment type enables you to use any
3922
3860
  # third-party deployment controller for full control over the
3923
3861
  # deployment process for an Amazon ECS service.
3862
+ #
3863
+ #
3864
+ #
3865
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeploymentConfiguration.html
3924
3866
  # @return [String]
3925
3867
  #
3926
3868
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentController AWS API Documentation
@@ -4518,43 +4460,21 @@ module Aws::ECS
4518
4460
  # placement. If the driver was installed using the Docker plugin CLI,
4519
4461
  # use `docker plugin ls` to retrieve the driver name from your
4520
4462
  # 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/
4463
+ # method, use Docker plugin discovery to retrieve the driver name.
4464
+ # This parameter maps to `Driver` in the docker conainer create
4465
+ # command and the `xxdriver` option to docker volume create.
4533
4466
  # @return [String]
4534
4467
  #
4535
4468
  # @!attribute [rw] driver_opts
4536
4469
  # 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/
4470
+ # parameter maps to `DriverOpts` in the docker create-volume command
4471
+ # and the `xxopt` option to docker volume create.
4546
4472
  # @return [Hash<String,String>]
4547
4473
  #
4548
4474
  # @!attribute [rw] labels
4549
4475
  # 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/
4476
+ # `Labels` in the docker conainer create command and the `xxlabel`
4477
+ # option to docker volume create.
4558
4478
  # @return [Hash<String,String>]
4559
4479
  #
4560
4480
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DockerVolumeConfiguration AWS API Documentation
@@ -5151,7 +5071,7 @@ module Aws::ECS
5151
5071
  # parameters that are specified in a container definition override any
5152
5072
  # Docker health checks that exist in the container image (such as those
5153
5073
  # specified in a parent image or from the image's Dockerfile). This
5154
- # configuration maps to the `HEALTHCHECK` parameter of [docker run][1].
5074
+ # configuration maps to the `HEALTHCHECK` parameter of docker run.
5155
5075
  #
5156
5076
  # <note markdown="1"> The Amazon ECS container agent only monitors and reports on the health
5157
5077
  # checks specified in the task definition. Amazon ECS does not monitor
@@ -5250,20 +5170,19 @@ module Aws::ECS
5250
5170
  #
5251
5171
  # * Container health checks require version `1.17.0` or greater of the
5252
5172
  # Amazon ECS container agent. For more information, see [Updating the
5253
- # Amazon ECS container agent][2].
5173
+ # Amazon ECS container agent][1].
5254
5174
  #
5255
5175
  # * Container health checks are supported for Fargate tasks if you're
5256
5176
  # using platform version `1.1.0` or greater. For more information, see
5257
- # [Fargate platform versions][3].
5177
+ # [Fargate platform versions][2].
5258
5178
  #
5259
5179
  # * Container health checks aren't supported for tasks that are part of
5260
5180
  # a service that's configured to use a Classic Load Balancer.
5261
5181
  #
5262
5182
  #
5263
5183
  #
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
5184
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html
5185
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
5267
5186
  #
5268
5187
  # @!attribute [rw] command
5269
5188
  # A string array representing the command that the container runs to
@@ -5283,13 +5202,8 @@ module Aws::ECS
5283
5202
  # ` CMD-SHELL, curl -f http://localhost/ || exit 1`
5284
5203
  #
5285
5204
  # 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/
5205
+ # indicates failure. For more information, see `HealthCheck` in tthe
5206
+ # docker conainer create command
5293
5207
  # @return [Array<String>]
5294
5208
  #
5295
5209
  # @!attribute [rw] interval
@@ -5337,7 +5251,11 @@ module Aws::ECS
5337
5251
 
5338
5252
  # Hostnames and IP address entries that are added to the `/etc/hosts`
5339
5253
  # file of a container via the `extraHosts` parameter of its
5340
- # ContainerDefinition.
5254
+ # [ContainerDefinition][1].
5255
+ #
5256
+ #
5257
+ #
5258
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html
5341
5259
  #
5342
5260
  # @!attribute [rw] hostname
5343
5261
  # The hostname to use in the `/etc/hosts` entry.
@@ -5482,22 +5400,18 @@ module Aws::ECS
5482
5400
 
5483
5401
  # The Linux capabilities to add or remove from the default Docker
5484
5402
  # 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.
5403
+ # detailed information about these Linux capabilities, see the
5404
+ # [capabilities(7)][1] Linux manual page.
5490
5405
  #
5491
5406
  #
5492
5407
  #
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
5408
+ # [1]: http://man7.org/linux/man-pages/man7/capabilities.7.html
5495
5409
  #
5496
5410
  # @!attribute [rw] add
5497
5411
  # The Linux capabilities for the container that have been added to the
5498
5412
  # 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].
5413
+ # `CapAdd` in the docker conainer create command and the `--cap-add`
5414
+ # option to docker run.
5501
5415
  #
5502
5416
  # <note markdown="1"> Tasks launched on Fargate only support adding the `SYS_PTRACE`
5503
5417
  # kernel capability.
@@ -5513,19 +5427,13 @@ module Aws::ECS
5513
5427
  # "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT"
5514
5428
  # | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" |
5515
5429
  # "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
5430
  # @return [Array<String>]
5523
5431
  #
5524
5432
  # @!attribute [rw] drop
5525
5433
  # The Linux capabilities for the container that have been removed from
5526
5434
  # 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].
5435
+ # `CapDrop` in the docker conainer create command and the `--cap-drop`
5436
+ # option to docker run.
5529
5437
  #
5530
5438
  # Valid values: `"ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" |
5531
5439
  # "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" |
@@ -5536,12 +5444,6 @@ module Aws::ECS
5536
5444
  # "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT"
5537
5445
  # | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" |
5538
5446
  # "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
5447
  # @return [Array<String>]
5546
5448
  #
5547
5449
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/KernelCapabilities AWS API Documentation
@@ -5600,69 +5502,50 @@ module Aws::ECS
5600
5502
  #
5601
5503
  # @!attribute [rw] devices
5602
5504
  # 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].
5505
+ # `Devices` in tthe docker conainer create command and the `--device`
5506
+ # option to docker run.
5605
5507
  #
5606
5508
  # <note markdown="1"> If you're using tasks that use the Fargate launch type, the
5607
5509
  # `devices` parameter isn't supported.
5608
5510
  #
5609
5511
  # </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
5512
  # @return [Array<Types::Device>]
5617
5513
  #
5618
5514
  # @!attribute [rw] init_process_enabled
5619
5515
  # Run an `init` process inside the container that forwards signals and
5620
5516
  # reaps processes. This parameter maps to the `--init` option to
5621
- # [docker run][1]. This parameter requires version 1.25 of the Docker
5517
+ # docker run. This parameter requires version 1.25 of the Docker
5622
5518
  # Remote API or greater on your container instance. To check the
5623
5519
  # Docker Remote API version on your container instance, log in to your
5624
5520
  # container instance and run the following command: `sudo docker
5625
5521
  # version --format '\{\{.Server.APIVersion\}\}'`
5626
- #
5627
- #
5628
- #
5629
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5630
5522
  # @return [Boolean]
5631
5523
  #
5632
5524
  # @!attribute [rw] shared_memory_size
5633
5525
  # 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].
5526
+ # parameter maps to the `--shm-size` option to docker run.
5635
5527
  #
5636
5528
  # <note markdown="1"> If you are using tasks that use the Fargate launch type, the
5637
5529
  # `sharedMemorySize` parameter is not supported.
5638
5530
  #
5639
5531
  # </note>
5640
- #
5641
- #
5642
- #
5643
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5644
5532
  # @return [Integer]
5645
5533
  #
5646
5534
  # @!attribute [rw] tmpfs
5647
5535
  # 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].
5536
+ # mount. This parameter maps to the `--tmpfs` option to docker run.
5650
5537
  #
5651
5538
  # <note markdown="1"> If you're using tasks that use the Fargate launch type, the `tmpfs`
5652
5539
  # parameter isn't supported.
5653
5540
  #
5654
5541
  # </note>
5655
- #
5656
- #
5657
- #
5658
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5659
5542
  # @return [Array<Types::Tmpfs>]
5660
5543
  #
5661
5544
  # @!attribute [rw] max_swap
5662
5545
  # The total amount of swap memory (in MiB) a container can use. This
5663
- # parameter will be translated to the `--memory-swap` option to
5664
- # [docker run][1] where the value would be the sum of the container
5665
- # memory plus the `maxSwap` value.
5546
+ # parameter will be translated to the `--memory-swap` option to docker
5547
+ # run where the value would be the sum of the container memory plus
5548
+ # the `maxSwap` value.
5666
5549
  #
5667
5550
  # If a `maxSwap` value of `0` is specified, the container will not use
5668
5551
  # swap. Accepted values are `0` or any positive integer. If the
@@ -5678,10 +5561,6 @@ module Aws::ECS
5678
5561
  # parameter isn't supported.
5679
5562
  #
5680
5563
  # </note>
5681
- #
5682
- #
5683
- #
5684
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5685
5564
  # @return [Integer]
5686
5565
  #
5687
5566
  # @!attribute [rw] swappiness
@@ -5692,8 +5571,7 @@ module Aws::ECS
5692
5571
  # between `0` and `100`. If the `swappiness` parameter is not
5693
5572
  # specified, a default value of `60` is used. If a value is not
5694
5573
  # specified for `maxSwap` then this parameter is ignored. This
5695
- # parameter maps to the `--memory-swappiness` option to [docker
5696
- # run][1].
5574
+ # parameter maps to the `--memory-swappiness` option to docker run.
5697
5575
  #
5698
5576
  # <note markdown="1"> If you're using tasks that use the Fargate launch type, the
5699
5577
  # `swappiness` parameter isn't supported.
@@ -5702,10 +5580,6 @@ module Aws::ECS
5702
5580
  # parameter isn't supported.
5703
5581
  #
5704
5582
  # </note>
5705
- #
5706
- #
5707
- #
5708
- # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5709
5583
  # @return [Integer]
5710
5584
  #
5711
5585
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/LinuxParameters AWS API Documentation
@@ -5986,9 +5860,13 @@ module Aws::ECS
5986
5860
  # Filters the container instances by status. For example, if you
5987
5861
  # specify the `DRAINING` status, the results include only container
5988
5862
  # instances that have been set to `DRAINING` using
5989
- # UpdateContainerInstancesState. If you don't specify this parameter,
5990
- # the default is to include container instances set to all states
5991
- # other than `INACTIVE`.
5863
+ # [UpdateContainerInstancesState][1]. If you don't specify this
5864
+ # parameter, the default is to include container instances set to all
5865
+ # states other than `INACTIVE`.
5866
+ #
5867
+ #
5868
+ #
5869
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateContainerInstancesState.html
5992
5870
  # @return [String]
5993
5871
  #
5994
5872
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ListContainerInstancesRequest AWS API Documentation
@@ -6555,15 +6433,13 @@ module Aws::ECS
6555
6433
  end
6556
6434
 
6557
6435
  # 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].
6436
+ # `LogConfig` in the docker conainer create command and the
6437
+ # `--log-driver` option to docker run.
6560
6438
  #
6561
6439
  # By default, containers use the same logging driver that the Docker
6562
6440
  # daemon uses. However, the container might use a different logging
6563
6441
  # 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.
6442
+ # in the container definition.
6567
6443
  #
6568
6444
  # Understand the following when specifying a log configuration for your
6569
6445
  # containers.
@@ -6576,8 +6452,8 @@ module Aws::ECS
6576
6452
  # `splunk`, and `awsfirelens`.
6577
6453
  #
6578
6454
  # 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`.
6455
+ # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,`syslog`,
6456
+ # `splunk`, and `awsfirelens`.
6581
6457
  #
6582
6458
  # * This parameter requires version 1.18 of the Docker Remote API or
6583
6459
  # greater on your container instance.
@@ -6587,7 +6463,7 @@ module Aws::ECS
6587
6463
  # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
6588
6464
  # containers placed on that instance can use these log configuration
6589
6465
  # options. For more information, see [Amazon ECS container agent
6590
- # configuration][5] in the *Amazon Elastic Container Service Developer
6466
+ # configuration][1] in the *Amazon Elastic Container Service Developer
6591
6467
  # Guide*.
6592
6468
  #
6593
6469
  # * For tasks that are on Fargate, because you don't have access to the
@@ -6598,11 +6474,7 @@ module Aws::ECS
6598
6474
  #
6599
6475
  #
6600
6476
  #
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
6477
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
6606
6478
  #
6607
6479
  # @!attribute [rw] log_driver
6608
6480
  # The log driver to use for the container.
@@ -6611,16 +6483,16 @@ module Aws::ECS
6611
6483
  # `splunk`, and `awsfirelens`.
6612
6484
  #
6613
6485
  # 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`.
6486
+ # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`, `syslog`,
6487
+ # `splunk`, and `awsfirelens`.
6616
6488
  #
6617
- # For more information about using the `awslogs` log driver, see
6618
- # [Using the awslogs log driver][1] in the *Amazon Elastic Container
6489
+ # For more information about using the `awslogs` log driver, see [Send
6490
+ # Amazon ECS logs to CloudWatch][1] in the *Amazon Elastic Container
6619
6491
  # Service Developer Guide*.
6620
6492
  #
6621
6493
  # For more information about using the `awsfirelens` log driver, see
6622
- # [Custom log routing][2] in the *Amazon Elastic Container Service
6623
- # Developer Guide*.
6494
+ # [Send Amazon ECS logs to an Amazon Web Services service or Amazon
6495
+ # Web Services Partner][2].
6624
6496
  #
6625
6497
  # <note markdown="1"> If you have a custom driver that isn't listed, you can fork the
6626
6498
  # Amazon ECS container agent project that's [available on GitHub][3]
@@ -6777,9 +6649,8 @@ module Aws::ECS
6777
6649
  #
6778
6650
  # @!attribute [rw] maximum_scaling_step_size
6779
6651
  # The maximum number of Amazon EC2 instances that Amazon ECS will
6780
- # scale out at one time. The scale in process is not affected by this
6781
- # parameter. If this parameter is omitted, the default value of
6782
- # `10000` is used.
6652
+ # scale out at one time. If this parameter is omitted, the default
6653
+ # value of `10000` is used.
6783
6654
  # @return [Integer]
6784
6655
  #
6785
6656
  # @!attribute [rw] instance_warmup_period
@@ -6869,7 +6740,11 @@ module Aws::ECS
6869
6740
  # Details on the network bindings between a container and its host
6870
6741
  # container instance. After a task reaches the `RUNNING` status, manual
6871
6742
  # and automatic host and container port assignments are visible in the
6872
- # `networkBindings` section of DescribeTasks API responses.
6743
+ # `networkBindings` section of [DescribeTasks][1] API responses.
6744
+ #
6745
+ #
6746
+ #
6747
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html
6873
6748
  #
6874
6749
  # @!attribute [rw] bind_ip
6875
6750
  # The IP address that the container is bound to on the container
@@ -7147,11 +7022,10 @@ module Aws::ECS
7147
7022
  # can be left blank or it must be the same value as the `containerPort`.
7148
7023
  #
7149
7024
  # 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.
7025
+ # `protocol`) maps to `PortBindings` in the docker conainer create
7026
+ # command and the `--publish` option to `docker run`. If the network
7027
+ # mode of a task definition is set to `host`, host ports must either be
7028
+ # undefined or match the container port in the port mapping.
7155
7029
  #
7156
7030
  # <note markdown="1"> You can't expose the same container port for multiple protocols. If
7157
7031
  # you attempt this, an error is returned.
@@ -7160,13 +7034,11 @@ module Aws::ECS
7160
7034
  #
7161
7035
  # After a task reaches the `RUNNING` status, manual and automatic host
7162
7036
  # and container port assignments are visible in the `networkBindings`
7163
- # section of DescribeTasks API responses.
7037
+ # section of [DescribeTasks][1] API responses.
7164
7038
  #
7165
7039
  #
7166
7040
  #
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/
7041
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html
7170
7042
  #
7171
7043
  # @!attribute [rw] container_port
7172
7044
  # The port number on the container that's bound to the user-specified
@@ -7363,8 +7235,13 @@ module Aws::ECS
7363
7235
  end
7364
7236
 
7365
7237
  # An object representing the protection status details for a task. You
7366
- # can set the protection status with the UpdateTaskProtection API and
7367
- # get the status of tasks with the GetTaskProtection API.
7238
+ # can set the protection status with the [UpdateTaskProtection][1] API
7239
+ # and get the status of tasks with the [GetTaskProtection][2] API.
7240
+ #
7241
+ #
7242
+ #
7243
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateTaskProtection.html
7244
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_GetTaskProtection.html
7368
7245
  #
7369
7246
  # @!attribute [rw] task_arn
7370
7247
  # The task ARN.
@@ -7784,13 +7661,17 @@ module Aws::ECS
7784
7661
  #
7785
7662
  # If specifying a capacity provider that uses an Auto Scaling group,
7786
7663
  # the capacity provider must already be created. New capacity
7787
- # providers can be created with the CreateCapacityProvider API
7664
+ # providers can be created with the [CreateCapacityProvider][1] API
7788
7665
  # operation.
7789
7666
  #
7790
7667
  # To use a Fargate capacity provider, specify either the `FARGATE` or
7791
7668
  # `FARGATE_SPOT` capacity providers. The Fargate capacity providers
7792
7669
  # are available to all accounts and only need to be associated with a
7793
7670
  # cluster to be used.
7671
+ #
7672
+ #
7673
+ #
7674
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCapacityProvider.html
7794
7675
  # @return [Array<String>]
7795
7676
  #
7796
7677
  # @!attribute [rw] default_capacity_provider_strategy
@@ -7803,19 +7684,25 @@ module Aws::ECS
7803
7684
  # A capacity provider strategy consists of one or more capacity
7804
7685
  # providers along with the `base` and `weight` to assign to them. A
7805
7686
  # capacity provider must be associated with the cluster to be used in
7806
- # a capacity provider strategy. The PutClusterCapacityProviders API is
7807
- # used to associate a capacity provider with a cluster. Only capacity
7808
- # providers with an `ACTIVE` or `UPDATING` status can be used.
7687
+ # a capacity provider strategy. The [PutClusterCapacityProviders][1]
7688
+ # API is used to associate a capacity provider with a cluster. Only
7689
+ # capacity providers with an `ACTIVE` or `UPDATING` status can be
7690
+ # used.
7809
7691
  #
7810
7692
  # If specifying a capacity provider that uses an Auto Scaling group,
7811
7693
  # the capacity provider must already be created. New capacity
7812
- # providers can be created with the CreateCapacityProvider API
7694
+ # providers can be created with the [CreateCapacityProvider][2] API
7813
7695
  # operation.
7814
7696
  #
7815
7697
  # To use a Fargate capacity provider, specify either the `FARGATE` or
7816
7698
  # `FARGATE_SPOT` capacity providers. The Fargate capacity providers
7817
7699
  # are available to all accounts and only need to be associated with a
7818
7700
  # cluster to be used.
7701
+ #
7702
+ #
7703
+ #
7704
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html
7705
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCapacityProvider.html
7819
7706
  # @return [Array<Types::CapacityProviderStrategyItem>]
7820
7707
  #
7821
7708
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/PutClusterCapacityProvidersRequest AWS API Documentation
@@ -7965,14 +7852,13 @@ module Aws::ECS
7965
7852
  # @!attribute [rw] execution_role_arn
7966
7853
  # The Amazon Resource Name (ARN) of the task execution role that
7967
7854
  # 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
7855
+ # Services API calls on your behalf. For informationabout the required
7856
+ # IAM roles for Amazon ECS, see [IAM roles for Amazon ECS][1] in the
7971
7857
  # *Amazon Elastic Container Service Developer Guide*.
7972
7858
  #
7973
7859
  #
7974
7860
  #
7975
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_execution_IAM_role.html
7861
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html
7976
7862
  # @return [String]
7977
7863
  #
7978
7864
  # @!attribute [rw] network_mode
@@ -8002,22 +7888,19 @@ module Aws::ECS
8002
7888
  # non-root user.
8003
7889
  #
8004
7890
  # 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*.
7891
+ # network interface, and you must specify a [NetworkConfiguration][1]
7892
+ # value when you create a service or run a task with the task
7893
+ # definition. For more information, see [Task Networking][2] in the
7894
+ # *Amazon Elastic Container Service Developer Guide*.
8009
7895
  #
8010
7896
  # If the network mode is `host`, you cannot run multiple
8011
7897
  # instantiations of the same task on a single container instance when
8012
7898
  # port mappings are used.
8013
7899
  #
8014
- # For more information, see [Network settings][2] in the *Docker run
8015
- # reference*.
8016
- #
8017
7900
  #
8018
7901
  #
8019
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
8020
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
7902
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
7903
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
8021
7904
  # @return [String]
8022
7905
  #
8023
7906
  # @!attribute [rw] container_definitions
@@ -8190,12 +8073,10 @@ module Aws::ECS
8190
8073
  # share the same process namespace.
8191
8074
  #
8192
8075
  # 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*.
8076
+ # each container.
8195
8077
  #
8196
8078
  # 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].
8079
+ # undesired process namespace exposure.
8199
8080
  #
8200
8081
  # <note markdown="1"> This parameter is not supported for Windows containers.
8201
8082
  #
@@ -8206,11 +8087,6 @@ module Aws::ECS
8206
8087
  # (Linux). This isn't supported for Windows containers on Fargate.
8207
8088
  #
8208
8089
  # </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
8090
  # @return [String]
8215
8091
  #
8216
8092
  # @!attribute [rw] ipc_mode
@@ -8224,17 +8100,15 @@ module Aws::ECS
8224
8100
  # containers of a task are private and not shared with other
8225
8101
  # containers in a task or on the container instance. If no value is
8226
8102
  # 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*.
8103
+ # Docker daemon setting on the container instance.
8229
8104
  #
8230
8105
  # 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].
8106
+ # risk of undesired IPC namespace expose.
8233
8107
  #
8234
8108
  # If you are setting namespaced kernel parameters using
8235
8109
  # `systemControls` for the containers in the task, the following will
8236
8110
  # apply to your IPC resource namespace. For more information, see
8237
- # [System Controls][3] in the *Amazon Elastic Container Service
8111
+ # [System Controls][1] in the *Amazon Elastic Container Service
8238
8112
  # Developer Guide*.
8239
8113
  #
8240
8114
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -8250,9 +8124,7 @@ module Aws::ECS
8250
8124
  #
8251
8125
  #
8252
8126
  #
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
8127
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
8256
8128
  # @return [String]
8257
8129
  #
8258
8130
  # @!attribute [rw] proxy_configuration
@@ -8603,12 +8475,17 @@ module Aws::ECS
8603
8475
  # Specifies whether to propagate the tags from the task definition to
8604
8476
  # the task. If no value is specified, the tags aren't propagated.
8605
8477
  # Tags can only be propagated to the task during task creation. To add
8606
- # tags to a task after task creation, use the TagResource API action.
8478
+ # tags to a task after task creation, use the[TagResource][1] API
8479
+ # action.
8607
8480
  #
8608
8481
  # <note markdown="1"> An error will be received if you specify the `SERVICE` option when
8609
8482
  # running a task.
8610
8483
  #
8611
8484
  # </note>
8485
+ #
8486
+ #
8487
+ #
8488
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TagResource.html
8612
8489
  # @return [String]
8613
8490
  #
8614
8491
  # @!attribute [rw] reference_id
@@ -8621,12 +8498,17 @@ module Aws::ECS
8621
8498
  # you automatically trigger a task to run a batch process job, you
8622
8499
  # could apply a unique identifier for that job to your task with the
8623
8500
  # `startedBy` parameter. You can then identify which tasks belong to
8624
- # that job by filtering the results of a ListTasks call with the
8501
+ # that job by filtering the results of a [ListTasks][1] call with the
8625
8502
  # `startedBy` value. Up to 128 letters (uppercase and lowercase),
8626
- # numbers, hyphens (-), and underscores (\_) are allowed.
8503
+ # numbers, hyphens (-), forward slash (/), and underscores (\_) are
8504
+ # allowed.
8627
8505
  #
8628
8506
  # If a task is started by an Amazon ECS service, then the `startedBy`
8629
8507
  # parameter contains the deployment ID of the service that starts it.
8508
+ #
8509
+ #
8510
+ #
8511
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html
8630
8512
  # @return [String]
8631
8513
  #
8632
8514
  # @!attribute [rw] tags
@@ -8934,8 +8816,13 @@ module Aws::ECS
8934
8816
  # @!attribute [rw] desired_count
8935
8817
  # The desired number of instantiations of the task definition to keep
8936
8818
  # running on the service. This value is specified when the service is
8937
- # created with CreateService, and it can be modified with
8938
- # UpdateService.
8819
+ # created with [CreateService][1] , and it can be modified with
8820
+ # [UpdateService][2].
8821
+ #
8822
+ #
8823
+ #
8824
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html
8825
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html
8939
8826
  # @return [Integer]
8940
8827
  #
8941
8828
  # @!attribute [rw] running_count
@@ -8981,8 +8868,13 @@ module Aws::ECS
8981
8868
  #
8982
8869
  # @!attribute [rw] task_definition
8983
8870
  # The task definition to use for tasks in the service. This value is
8984
- # specified when the service is created with CreateService, and it can
8985
- # be modified with UpdateService.
8871
+ # specified when the service is created with [CreateService][1], and
8872
+ # it can be modified with [UpdateService][2].
8873
+ #
8874
+ #
8875
+ #
8876
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html
8877
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html
8986
8878
  # @return [String]
8987
8879
  #
8988
8880
  # @!attribute [rw] deployment_configuration
@@ -9283,15 +9175,13 @@ module Aws::ECS
9283
9175
  #
9284
9176
  # @!attribute [rw] log_configuration
9285
9177
  # 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].
9178
+ # `LogConfig` in the docker conainer create command and the
9179
+ # `--log-driver` option to docker run.
9288
9180
  #
9289
9181
  # By default, containers use the same logging driver that the Docker
9290
9182
  # daemon uses. However, the container might use a different logging
9291
9183
  # 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.
9184
+ # configuration in the container definition.
9295
9185
  #
9296
9186
  # Understand the following when specifying a log configuration for
9297
9187
  # your containers.
@@ -9304,8 +9194,8 @@ module Aws::ECS
9304
9194
  # `splunk`, and `awsfirelens`.
9305
9195
  #
9306
9196
  # 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`.
9197
+ # drivers are `awslogs`, `fluentd`, `gelf`, `json-file`,
9198
+ # `journald`,`syslog`, `splunk`, and `awsfirelens`.
9309
9199
  #
9310
9200
  # * This parameter requires version 1.18 of the Docker Remote API or
9311
9201
  # greater on your container instance.
@@ -9315,7 +9205,7 @@ module Aws::ECS
9315
9205
  # the `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
9316
9206
  # containers placed on that instance can use these log configuration
9317
9207
  # options. For more information, see [Amazon ECS container agent
9318
- # configuration][5] in the *Amazon Elastic Container Service
9208
+ # configuration][1] in the *Amazon Elastic Container Service
9319
9209
  # Developer Guide*.
9320
9210
  #
9321
9211
  # * For tasks that are on Fargate, because you don't have access to
@@ -9326,11 +9216,7 @@ module Aws::ECS
9326
9216
  #
9327
9217
  #
9328
9218
  #
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
9219
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
9334
9220
  # @return [Types::LogConfiguration]
9335
9221
  #
9336
9222
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceConnectConfiguration AWS API Documentation
@@ -9723,15 +9609,23 @@ module Aws::ECS
9723
9609
 
9724
9610
  # The specified service isn't active. You can't update a service
9725
9611
  # that's inactive. If you have previously deleted a service, you can
9726
- # re-create it with CreateService.
9612
+ # re-create it with [CreateService][1].
9613
+ #
9614
+ #
9615
+ #
9616
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html
9727
9617
  #
9728
9618
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceNotActiveException AWS API Documentation
9729
9619
  #
9730
9620
  class ServiceNotActiveException < Aws::EmptyStructure; end
9731
9621
 
9732
9622
  # The specified service wasn't found. You can view your available
9733
- # services with ListServices. Amazon ECS services are cluster specific
9734
- # and Region specific.
9623
+ # services with [ListServices][1]. Amazon ECS services are cluster
9624
+ # specific and Region specific.
9625
+ #
9626
+ #
9627
+ #
9628
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html
9735
9629
  #
9736
9630
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceNotFoundException AWS API Documentation
9737
9631
  #
@@ -9958,12 +9852,17 @@ module Aws::ECS
9958
9852
  # you automatically trigger a task to run a batch process job, you
9959
9853
  # could apply a unique identifier for that job to your task with the
9960
9854
  # `startedBy` parameter. You can then identify which tasks belong to
9961
- # that job by filtering the results of a ListTasks call with the
9855
+ # that job by filtering the results of a [ListTasks][1] call with the
9962
9856
  # `startedBy` value. Up to 36 letters (uppercase and lowercase),
9963
- # numbers, hyphens (-), and underscores (\_) are allowed.
9857
+ # numbers, hyphens (-), forward slash (/), and underscores (\_) are
9858
+ # allowed.
9964
9859
  #
9965
9860
  # If a task is started by an Amazon ECS service, the `startedBy`
9966
9861
  # parameter contains the deployment ID of the service that starts it.
9862
+ #
9863
+ #
9864
+ #
9865
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListTasks.html
9967
9866
  # @return [String]
9968
9867
  #
9969
9868
  # @!attribute [rw] tags
@@ -10066,7 +9965,12 @@ module Aws::ECS
10066
9965
  # An optional message specified when a task is stopped. For example,
10067
9966
  # if you're using a custom scheduler, you can use this parameter to
10068
9967
  # specify the reason for stopping the task here, and the message
10069
- # appears in subsequent DescribeTasks API operations on this task.
9968
+ # appears in subsequent [DescribeTasks][1]&gt; API operations on this
9969
+ # task.
9970
+ #
9971
+ #
9972
+ #
9973
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html
10070
9974
  # @return [String]
10071
9975
  #
10072
9976
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/StopTaskRequest AWS API Documentation
@@ -10254,10 +10158,10 @@ module Aws::ECS
10254
10158
  end
10255
10159
 
10256
10160
  # 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.
10161
+ # parameter maps to `Sysctls` in tthe docker conainer create command and
10162
+ # the `--sysctl` option to docker run. For example, you can configure
10163
+ # `net.ipv4.tcp_keepalive_time` setting to maintain longer lived
10164
+ # connections.
10261
10165
  #
10262
10166
  # We don't recommend that you specify network-related `systemControls`
10263
10167
  # parameters for multiple containers in a single task that also uses
@@ -10275,7 +10179,7 @@ module Aws::ECS
10275
10179
  #
10276
10180
  # If you're setting an IPC resource namespace to use for the containers
10277
10181
  # in the task, the following conditions apply to your system controls.
10278
- # For more information, see [IPC mode][4].
10182
+ # For more information, see [IPC mode][1].
10279
10183
  #
10280
10184
  # * For tasks that use the `host` IPC mode, IPC namespace
10281
10185
  # `systemControls` aren't supported.
@@ -10295,10 +10199,7 @@ module Aws::ECS
10295
10199
  #
10296
10200
  #
10297
10201
  #
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
10202
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_definition_ipcmode
10302
10203
  #
10303
10204
  # @!attribute [rw] namespace
10304
10205
  # The namespaced kernel parameter to set a `value` for.
@@ -10448,8 +10349,12 @@ module Aws::ECS
10448
10349
  class TargetNotConnectedException < Aws::EmptyStructure; end
10449
10350
 
10450
10351
  # 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.
10352
+ # container instances with [ListContainerInstances][1]. Amazon ECS
10353
+ # container instances are cluster-specific and Region-specific.
10354
+ #
10355
+ #
10356
+ #
10357
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListContainerInstances.html
10453
10358
  #
10454
10359
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TargetNotFoundException AWS API Documentation
10455
10360
  #
@@ -10861,33 +10766,26 @@ module Aws::ECS
10861
10766
  # @!attribute [rw] task_role_arn
10862
10767
  # The short name or full Amazon Resource Name (ARN) of the Identity
10863
10768
  # 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*.
10769
+ # permission to call Amazon Web Services APIs on your behalf. For
10770
+ # informationabout the required IAM roles for Amazon ECS, see [IAM
10771
+ # roles for Amazon ECS][1] in the *Amazon Elastic Container Service
10772
+ # Developer Guide*.
10873
10773
  #
10874
10774
  #
10875
10775
  #
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
10776
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html
10878
10777
  # @return [String]
10879
10778
  #
10880
10779
  # @!attribute [rw] execution_role_arn
10881
10780
  # The Amazon Resource Name (ARN) of the task execution role that
10882
10781
  # 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
10782
+ # Services API calls on your behalf. For informationabout the required
10783
+ # IAM roles for Amazon ECS, see [IAM roles for Amazon ECS][1] in the
10886
10784
  # *Amazon Elastic Container Service Developer Guide*.
10887
10785
  #
10888
10786
  #
10889
10787
  #
10890
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_execution_IAM_role.html
10788
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-ecs-iam-role-overview.html
10891
10789
  # @return [String]
10892
10790
  #
10893
10791
  # @!attribute [rw] network_mode
@@ -10917,22 +10815,19 @@ module Aws::ECS
10917
10815
  # non-root user.
10918
10816
  #
10919
10817
  # 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*.
10818
+ # network interface, and you must specify a [NetworkConfiguration][1]
10819
+ # value when you create a service or run a task with the task
10820
+ # definition. For more information, see [Task Networking][2] in the
10821
+ # *Amazon Elastic Container Service Developer Guide*.
10924
10822
  #
10925
10823
  # If the network mode is `host`, you cannot run multiple
10926
10824
  # instantiations of the same task on a single container instance when
10927
10825
  # port mappings are used.
10928
10826
  #
10929
- # For more information, see [Network settings][2] in the *Docker run
10930
- # reference*.
10931
- #
10932
10827
  #
10933
10828
  #
10934
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
10935
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
10829
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
10830
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
10936
10831
  # @return [String]
10937
10832
  #
10938
10833
  # @!attribute [rw] revision
@@ -10968,10 +10863,11 @@ module Aws::ECS
10968
10863
  # Amazon EC2 instance is registered to your cluster, the Amazon ECS
10969
10864
  # container agent assigns some standard attributes to the instance.
10970
10865
  # You can apply custom attributes. These are specified as key-value
10971
- # pairs using the Amazon ECS console or the PutAttributes API. These
10972
- # attributes are used when determining task placement for tasks hosted
10973
- # on Amazon EC2 instances. For more information, see [Attributes][1]
10974
- # in the *Amazon Elastic Container Service Developer Guide*.
10866
+ # pairs using the Amazon ECS console or the [PutAttributes][1] API.
10867
+ # These attributes are used when determining task placement for tasks
10868
+ # hosted on Amazon EC2 instances. For more information, see
10869
+ # [Attributes][2] in the *Amazon Elastic Container Service Developer
10870
+ # Guide*.
10975
10871
  #
10976
10872
  # <note markdown="1"> This parameter isn't supported for tasks run on Fargate.
10977
10873
  #
@@ -10979,7 +10875,8 @@ module Aws::ECS
10979
10875
  #
10980
10876
  #
10981
10877
  #
10982
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html#attributes
10878
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAttributes.html
10879
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html#attributes
10983
10880
  # @return [Array<Types::Attribute>]
10984
10881
  #
10985
10882
  # @!attribute [rw] placement_constraints
@@ -11028,6 +10925,10 @@ module Aws::ECS
11028
10925
  # one of the following values. The value that you choose determines
11029
10926
  # your range of valid values for the `memory` parameter.
11030
10927
  #
10928
+ # If you use the EC2 launch type, this field is optional. Supported
10929
+ # values are between `128` CPU units (`0.125` vCPUs) and `10240` CPU
10930
+ # units (`10` vCPUs).
10931
+ #
11031
10932
  # The CPU units cannot be less than 1 vCPU when you use Windows
11032
10933
  # containers on Fargate.
11033
10934
  #
@@ -11121,12 +11022,10 @@ module Aws::ECS
11121
11022
  # share the same process namespace.
11122
11023
  #
11123
11024
  # 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*.
11025
+ # each container.
11126
11026
  #
11127
11027
  # 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].
11028
+ # undesired process namespace exposure.
11130
11029
  #
11131
11030
  # <note markdown="1"> This parameter is not supported for Windows containers.
11132
11031
  #
@@ -11137,11 +11036,6 @@ module Aws::ECS
11137
11036
  # (Linux). This isn't supported for Windows containers on Fargate.
11138
11037
  #
11139
11038
  # </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
11039
  # @return [String]
11146
11040
  #
11147
11041
  # @!attribute [rw] ipc_mode
@@ -11155,17 +11049,15 @@ module Aws::ECS
11155
11049
  # containers of a task are private and not shared with other
11156
11050
  # containers in a task or on the container instance. If no value is
11157
11051
  # 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*.
11052
+ # Docker daemon setting on the container instance.
11160
11053
  #
11161
11054
  # 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].
11055
+ # risk of undesired IPC namespace expose.
11164
11056
  #
11165
11057
  # If you are setting namespaced kernel parameters using
11166
11058
  # `systemControls` for the containers in the task, the following will
11167
11059
  # apply to your IPC resource namespace. For more information, see
11168
- # [System Controls][3] in the *Amazon Elastic Container Service
11060
+ # [System Controls][1] in the *Amazon Elastic Container Service
11169
11061
  # Developer Guide*.
11170
11062
  #
11171
11063
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -11181,9 +11073,7 @@ module Aws::ECS
11181
11073
  #
11182
11074
  #
11183
11075
  #
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
11076
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
11187
11077
  # @return [String]
11188
11078
  #
11189
11079
  # @!attribute [rw] proxy_configuration
@@ -11839,8 +11729,12 @@ module Aws::ECS
11839
11729
  end
11840
11730
 
11841
11731
  # The specified task set wasn't found. You can view your available task
11842
- # sets with DescribeTaskSets. Task sets are specific to each cluster,
11843
- # service and Region.
11732
+ # sets with [DescribeTaskSets][1]. Task sets are specific to each
11733
+ # cluster, service and Region.
11734
+ #
11735
+ #
11736
+ #
11737
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTaskSets.html
11844
11738
  #
11845
11739
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TaskSetNotFoundException AWS API Documentation
11846
11740
  #
@@ -11944,7 +11838,7 @@ module Aws::ECS
11944
11838
  # values set by the operating system with the exception of the `nofile`
11945
11839
  # resource limit parameter which Fargate overrides. The `nofile`
11946
11840
  # 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
11841
+ # container can use. The default `nofile` soft limit is ` 65535` and the
11948
11842
  # default hard limit is `65535`.
11949
11843
  #
11950
11844
  # You can specify the `ulimit` settings for a container in a task
@@ -12099,7 +11993,7 @@ module Aws::ECS
12099
11993
  # The setting to use by default for a cluster. This parameter is used
12100
11994
  # to turn on CloudWatch Container Insights for a cluster. If this
12101
11995
  # value is specified, it overrides the `containerInsights` value set
12102
- # with PutAccountSetting or PutAccountSettingDefault.
11996
+ # with [PutAccountSetting][1] or [PutAccountSettingDefault][2].
12103
11997
  #
12104
11998
  # Currently, if you delete an existing cluster that does not have
12105
11999
  # Container Insights turned on, and then create a new cluster with the
@@ -12107,6 +12001,11 @@ module Aws::ECS
12107
12001
  # not actually be turned on. If you want to preserve the same name for
12108
12002
  # your existing cluster and turn on Container Insights, you must wait
12109
12003
  # 7 days before you can re-create it.
12004
+ #
12005
+ #
12006
+ #
12007
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSetting.html
12008
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSettingDefault.html
12110
12009
  # @return [Array<Types::ClusterSetting>]
12111
12010
  #
12112
12011
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateClusterSettingsRequest AWS API Documentation
@@ -12296,23 +12195,31 @@ module Aws::ECS
12296
12195
  # A capacity provider strategy consists of one or more capacity
12297
12196
  # providers along with the `base` and `weight` to assign to them. A
12298
12197
  # capacity provider must be associated with the cluster to be used in
12299
- # a capacity provider strategy. The PutClusterCapacityProviders API is
12300
- # used to associate a capacity provider with a cluster. Only capacity
12301
- # providers with an `ACTIVE` or `UPDATING` status can be used.
12198
+ # a capacity provider strategy. The [PutClusterCapacityProviders][1]
12199
+ # API is used to associate a capacity provider with a cluster. Only
12200
+ # capacity providers with an `ACTIVE` or `UPDATING` status can be
12201
+ # used.
12302
12202
  #
12303
12203
  # If specifying a capacity provider that uses an Auto Scaling group,
12304
12204
  # the capacity provider must already be created. New capacity
12305
- # providers can be created with the CreateCapacityProvider API
12306
- # operation.
12205
+ # providers can be created with the [CreateClusterCapacityProvider][2]
12206
+ # API operation.
12307
12207
  #
12308
12208
  # To use a Fargate capacity provider, specify either the `FARGATE` or
12309
12209
  # `FARGATE_SPOT` capacity providers. The Fargate capacity providers
12310
12210
  # are available to all accounts and only need to be associated with a
12311
12211
  # cluster to be used.
12312
12212
  #
12313
- # The PutClusterCapacityProviders API operation is used to update the
12314
- # list of available capacity providers for a cluster after the cluster
12315
- # is created.
12213
+ # The [PutClusterCapacityProviders][1]API operation is used to update
12214
+ # the list of available capacity providers for a cluster after the
12215
+ # cluster is created.
12216
+ #
12217
+ #
12218
+ #
12219
+ #
12220
+ #
12221
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html
12222
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateClusterCapacityProvider.html
12316
12223
  # @return [Array<Types::CapacityProviderStrategyItem>]
12317
12224
  #
12318
12225
  # @!attribute [rw] deployment_configuration