- Feature - Add support for bulk loading env vars through environmentFiles field in task definition #2420
- Feature - Add v4 task metadata endpoint, which includes additional network information compared to v3 #2396
- Bug - Fixed an edge case that can cause task failed to start when using container ordering success condition #2404.
- Feature - add integration with EFS's access point and IAM authorization features; support EFS volume for task in awsvpc network mode
- Enhancement - adding Runtime ID of container to agent logs #2399
- Feature - additional parameters allowed when specifying secretsmanager secret #2358
- Bug - fixed a bug where Firelens container could not use config file from S3 bucket in us-east-1 #2356
- Bug - fix windows logfile writing #2347
- Bug - update sbin mount point to avoid conflict with Docker >= 19.03.5 #2345
- Bug - Fixed potential file descriptor leak with context logger #2337
- Feature - EFS Preview #2301
- Bug - Load pause container for use by PID/IPC even if task networking is disabled #2300
- Bug - Fixed a race condition that might cause the agent to crash during container creation #2299
- Feature - Add Windows gMSA (group Managed Service Account) support on ECS.
- Bug - Binding metadata directory in Z mode for selinux enabled docker, which enables read access to the metadata files from container processes. #2273
- Feature - Agent performs a sync between task state on the instance and on the backend everytime Agent establishes a connection with the backend. This ensures that task state is as expected on the instance after the instance reconnects with the instance after a disconnection #2191
- Enhancement - Update Docker LoadImage API timeout based on benchmarking test #2269
- Enhancement - Enable the detection of health status of ECS Agent using HEALTHCHECK directive #2260
- Enhancement - Add
NON_ECS_IMAGE_MINIMUM_CLEANUP_AGE
flag which when set allows the user to set the minimum time interval between when a non ECS image is created and when it can be considered for automated image cleanup #2251
- Enhancement - Add
ECS_ENABLE_MEMORY_UNBOUNDED_WINDOWS_WORKAROUND
flag which when set ignores the memory reservation parameter along with memory bounded tasks in windows @julienduchesne #2239 - Bug - Fixed a bug when config attribute in hostConfig is nil when starting a task #2249
- Bug - Fixed a bug where start container failed with EOF and container is started anyways #2245
- Bug - Fixed a bug where incorrect error type was detected when the
vpc-id
could not be detected on ec2-classic #2243 - Bug - Fixed a bug where Agent did not reopen Docker event stream when it gets EOF/UnexpectedEOF error #2240
- Feature - Add support for automatic spot instance draining #2205
- Bug - Fixed a bug where the agent might crash if it's restarted right after launching a task in awsvpc network mode #2219
- Feature - Add support for showing container's ImageDigest Pulled from ECR in ECS DescribeTasks #2201
- Enhancement - Add more functionalities to firelens (log router) feature: allow including external config from s3 and local file; add fluent logger support for bridge and awsvpc network mode; add health check support for aws-for-fluent-bit image
- Enhancement - Add support for Windows Named Pipes in volumes @ericdalling #2185
- Feature - Add log router support (beta)
- Feature - Add elastic inference support
- Feature - Add support for showing container's Docker ID in ECS DescribeTasks and StopTask APIs #2138
- Enhancement - Update task cleanup wait logic to clean task resources immediately instead of waiting 3 hours #2084
- Bug - Fixed Agent reporting incorrect capabilities on Windows #2070
- Bug - Fixed a bug where Agent fails to invoke IPAM DEL command when cleaning up AWSVPC task #2085
- Bug - Fixed a bug where task resource unmarshal error was ignored rather than returned #2098
- Bug - Update amazon-vpc-plugins that allows AWSVPCTrunking to work without ec2-net-utils #2093
- Enhancement - Non-ECS images cleanup: clean up dangling images with image ID #2023
- Bug - Pick up latest version of amazon-vpc-cni-plugins and amazon-ecs-cni-plugins to include recent bug fixes (f09fd7c, d90eebe, 06cbba2)
- Bug - Fixed error detection case when image that is being deleted does not exist @bendavies #2008
- Bug - Fixed a bug where docker volume deletion resulted in nullpointer #2059
- Feature - Introduce high density awsvpc tasks support
- Enhancement - Introduce
ECS_CGROUP_CPU_PERIOD
to make cgroup cpu period configurable @boynux #1941 - Enhancement - Add Private Host IPv4 address to container metadata @bencord0 #2000
- Enhancement - Set terminal reason for volume task resource #2004
- Bug - Fixed a bug where container health status is not updated when container status isn't changed #1972
- Bug - Fixed a bug where containers in 'dead' or 'created' status are not cleaned up by the agent #2015
- Feature - Add secret support for log drivers
- Enhancement - Set up pause container user the same as proxy container when App Mesh enabled and pause container not using default image
- Bug - Fixed a bug where network stats are not presented in container stats #1932
- Feature - Startup order can now be explicitly set via DependsOn field in the Task Definition #1904
- Feature - Containers in a task can now have individual start and stop timeouts #1904
- Feature - AWS App Mesh CNI plugin support #1898
- Enhancement - Containers with links and volumes defined will now shutdown in the correct order #1904
- Bug - Image cleanup errors fixed #1897
- Bug - Fixed a bug where agent no longer redirected malformed credentials or metadata http requests #1844
- Bug - Populate v3 metadata networks response for non-awsvpc tasks #1833
- Bug - Avoid image pull behavior type check for container namespaces pause image #1840
- Bug - Update pull image retry to longer interval to mitigate being throttled by ECR #1808
- Bug - Update ecr models for private link support
- Feature - Add Nvidia GPU support for p2 and p3 instances
- Feature - Introduce
ECS_DISABLE_DOCKER_HEALTH_CHECK
to make docker health check configurable #1624
- Feature - Configurable poll duration for container stats @jcbowman #1646
- Feature - Add support to remove containers and images that are not part of ECS tasks #1752
- Feature - Introduce prometheus support for agent metrics #1745
- Feature - Add Host EC2 instance Public IPv4 address to container metadata file #1730
- Enhancement - Docker SDK migration replacing go-dockerclient #1743
- Enhancement - Propagating Container Instance and Task Tags to Task Metadata endpoint #1720
- Feature - Add support for ECS Secrets integrating with AWS Secrets Manager #1713
- Enhancement - Add availability zone to task metadata endpoint #1674
- Enhancement - Add availability zone to ECS metadata file #1675
- Bug - Fixed a bug where agent can register container instance back to back and gets assigned two container instance ARNs #1711
- Bug - Fixed a bug where propagated
aws:
tags are passed through RegisterContainerInstance API call #1706
- Feature - Add support for ECS Secrets integrating with AWS Systems Manager Parameter Store
- Feature - Support for
--pid
,--ipc
Docker run flags. #1584 - Feature - Introduce two environment variables
ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM
andECS_CONTAINER_INSTANCE_TAGS
to support ECS tagging #1618
- Feature - Add v3 task metadata support for awsvpc, host and bridge network mode
- Enhancement - Update the
amazon-ecs-cni-plugins
to2018.10.0
#1610 - Enhancement - Configurable image pull inactivity timeout @wattdave #1566
- Bug - Fixed a bug where Windows drive volume couldn't be mounted #1571
- Bug - Fixed a bug where the Agent's Windows binaries didn't use consistent naming #1573
- Bug - Fixed a bug where a port used by WinRM service was not reserved by the Agent by default #1577
- Enhancement - Deprecate support for serial docker image pull #1569
- Enhancement - Update the
amazon-ecs-cni-plugins
to2018.08.0
- Enhancement - Added ECS config field
ECS_SHARED_VOLUME_MATCH_FULL_CONFIG
to make the volume labels and driver options comparison configurable for shared volume #1519 - Enhancement - Added Volumes metadata as part of v1 and v2 metadata endpoints #1531
- Bug - Fixed a bug where unrecognized task cannot be stopped #1467
- Bug - Fixed a bug where tasks with CPU windows unbounded field set are not honored
on restart due to non-persistence of
PlatformFields
in agent state file @julienduchesne #1480
- Bug - Fixed a bug where the agent couldn't be upgraded if there are tasks that use volumes in the task definition on the instance
- Bug - Fixed a bug where volumes driver may not work with mountpoint
- Feature - Add support for Docker volume drivers, third party drivers are only supported on linux
- Enhancement - Replace the empty container with Docker local volume
- Enhancement - Deprecate support for Docker version older than 1.9.0 #1477
- Bug - Fixed a bug where container marked as stopped comes back with a running status #1446
- Bug - Fixed a bug where responses of introspection API break backward compatibility #1473
- Feature - Private registry can be authenticated through task definition using AWS Secrets Manager #1427
- Feature - Configurable container image pull behavior #1348
- Bug - Fixed a bug where Docker Version() API never returns by adding a timeout #1363
- Bug - Fixed a bug where tasks could get stuck waiting for execution of CNI plugin #1358
- Bug - Fixed a bug where task cleanup could be blocked due to incorrect sentstatus #1383
- Enhancement - Distinct startContainerTimeouts for windows/linux, introduce a new environment variable
ECS_CONTAINER_START_TIMEOUT
to make it configurable #1321 - Enhancement - Add support for containers to inherit ENI private DNS hostnames for
awsvpc
tasks #1278 - Enhancement - Expose task definition family and task definition revision in container metadata file #1295
- Enhancement - Fail image pulls if there's inactivity during image pull progress #1290
- Enhancement - Parallelize the container transition in the same task #1305
- Bug - Fixed a bug where a stale websocket connection could linger #1310
- Enhancement - Update the
amazon-ecs-cni-plugins
to2018.02.0
#1272 - Enhancement - Add container port mapping and ENI information in introspection API #1271
- Bug - Fixed a bug that was causing a runtime panic by accessing negative index in the health check log slice #1239
- Bug - Workaround for an issue where CPU percent was set to 1 when CPU was not set or set to zero(unbounded) in Windows #1227
- Bug - Fixed a bug where steady state throttle limits for task metadata endpoints were too low for applications #1240
- Feature - Support a HTTP endpoint for
awsvpc
tasks to query metadata - Feature - Support Docker health check
- Bug - Fixed a bug where
-version
fails due to its dependency on docker client #1118 - Bug - Persist container exit code in agent state file #1125
- Bug - Fixed a bug where the agent could lose track of running containers when Docker APIs timeout #1217
- Bug - Task level memory.use_hierarchy was not being set and memory limits were not being enforced #1195
- Bug - Fixed a bug where CPU utilization wasn't correctly reported on Windows @bboerst #1219
- Bug - Fixed a bug where the ticker would submit empty container state change transitions when a task is STOPPED. #1178
- Bug - Fixed a bug where the agent could miss sending an ENI attachment to ECS because of address propagation delays. #1148
- Enhancement - Upgrade the
amazon-ecs-cni-plugins
to2017.10.1
. #1155
- Feature - Support pulling from Amazon ECR with specified IAM role in task definition
- Feature - Enable support for task level CPU and memory constraints.
- Feature - Enable the ECS agent to run as a Windows service. #1070
- Enhancement - Support CloudWatch metrics for Windows. #1077
- Enhancement - Enforce memory limits on Windows. #1069
- Enhancement - Enforce CPU limits on Windows. #1089
- Enhancement - Simplify task IAM credential host setup. #1105
- Bug - Fixed a bug where container state information wasn't reported. #1076
- Bug - Fixed a bug where container state information wasn't reported. #1067
- Bug - Fixed a bug where a task can be blocked in creating state. #1048
- Bug - Fixed dynamic HostPort in container metadata. #1052
- Bug - Fixed bug on Windows where container memory limits are not enforced. #1069
- Feature - Support for provisioning tasks with ENIs.
- Feature - Support for
--init
Docker run flag. #996 - Feature - Introduces container level metadata. #981
- Enhancement - Enable 'none' logging driver capability by default. #1041
- Bug - Fixed a bug where tasks that fail to pull containers can cause the agent to fail to restore properly after a restart. #1033
- Bug - Fixed default logging level issue. #1016
- Bug - Fixed a bug where unsupported Docker API client versions could be registered. #1014
- Bug - Fixed a bug where non-essential container state changes were sometimes not submitted. #1026
- Enhancement - Retry failed container image pull operations #975
- Enhancement - Set read and write timeouts for websocket connectons #993
- Enhancement - Add support for the SumoLogic Docker log driver plugin #992
- Bug - Fixed a memory leak issue when submitting the task state change #967
- Bug - Fixed a race condition where a container can be created twice when agent restarts. #939
- Bug - Fixed an issue where
microsoft/windowsservercore:latest
was not pulled on Windows under certain conditions. #990 - Bug - Fixed an issue where task IAM role credentials could be logged to disk. #998
- Enhancement - Batch container state change events. #867
- Enhancement - Improve the error message when reserved memory is larger than the available memory. #897
- Enhancement - Allow plain HTTP connections through wsclient. #899
- Enhancement - Support Logentries log driver by @opsline-radek. #870
- Enhancement - Allow instance attributes to be provided from config file by @ejholmes. #908
- Enhancement - Reduce the disconnection period to the backend for idle connections. #912
- Bug - Fixed data race where a pointer was returned in Getter. #889
- Bug - Reset agent state if the instance id changed on agent restart. #892
- Bug - Fixed a situation in which containers may be falsely reported as STOPPED in the case of a Docker "stop" API failure. #910
- Bug - Fixed typo in log string by @sharuzzaman. #930
- Bug - Fixed a deadlock that was caused by the ImageCleanup and Image Pull. #836
- Enhancement - Added introspection API for querying tasks by short docker ID, by @aaronwalker. #813
- Bug - Added checks for circular task dependencies. #796
- Bug - Fixed an issue with Docker auth configuration overrides. #751
- Bug - Fixed a race condition in the task clean up code path. #737
- Bug - Fixed an issue involving concurrent map writes. #743
- Enhancement - Log completion of image pulls. #715
- Enhancement - Increase start and create timeouts to improve reliability under some workloads. #696
- Bug - Fixed a bug where throttles on state change reporting could lead to corrupted state. #705
- Bug - Correct formatting of log messages from tcshandler. #693
- Bug - Fixed an issue where agent could crash. #692
- Feature - Support definition of custom attributes on agent registration.
- Feature - Support Docker on Windows Server 2016.
- Enhancement - Enable concurrent docker pull for docker version >= 1.11.1.
- Bug - Fixes a bug where a task could be prematurely marked as stopped.
- Bug - Fixes an issue where ECS Agent would keep reconnecting to ACS without any backoff.
- Bug - Fix memory metric to exclude cache value.
- Enhancement - Added cache for DiscoverPollEndPoint API.
- Enhancement - Expose port 51679 so docker tasks can fetch IAM credentials.
- Bug - fixed a bug that could lead to exhausting the open file limit.
- Bug - Fixed a bug where images were not deleted when using image cleanup.
- Bug - Fixed a bug where task status may be reported as pending while task is running.
- Bug - Fixed a bug where task may have a temporary "RUNNING" state when task failed to start.
- Bug - Fixed a bug where CPU metrics would be reported incorrectly for kernel >= 4.7.0.
- Bug - Fixed a bug that may cause agent not report metrics.
- Feature - Implemented automated image cleanup.
- Enhancement - Add credential caching for ECR.
- Enhancement - Add support for security-opt=no-new-privileges.
- Bug - Fixed a potential deadlock in dockerstate.
- Bug - Fixed a bug where agent keeps fetching stats of stopped containers.
- Bug - Fixed a bug where agent keeps fetching stats of stopped containers.
- Bug - Fixed a bug that could lead to exhausting the open file limit.
- Bug - Fixed a bug where the introspection API could return the wrong response code.
- Enhancement - Support Task IAM Role for containers launched with 'host' network mode.
- Bug - Fixed a bug where telemetry data would fail to serialize properly.
- Bug - Addressed an issue where telemetry would be reported after the container instance was deregistered.
- Feature - Support IAM roles for tasks.
- Feature - Add support for the Splunk logging driver.
- Enhancement - Reduced pull status verbosity in debug mode.
- Enhancement - Add a Docker label for ECS cluster.
- Bug - Fixed a bug that could cause a container to be marked as STOPPED while still running on the instance.
- Bug - Fixed a potential race condition in metrics collection.
- Bug - Resolved a bug where some state could be retained across different container instances when launching from a snapshotted AMI.
- Feature - Make the
docker stop
timeout configurable. - Enhancement - Use
docker stats
as the data source for CloudWatch metrics. - Bug - Fixed an issue where update requests would not be properly acknowledged when updates were disabled.
- Feature - Add Amazon CloudWatch Logs logging driver.
- Bug - Fixed ACS handler when acking blank message ids.
- Bug - Fixed an issue where CPU utilization could be reported incorrectly.
- Bug - Resolved a bug where containers would not get cleaned up in some cases.
- Bug - Fixed an issue where
exec_create
andexec_start
events were not correctly ignored with some Docker versions. - Bug - Fixed memory utilization computation.
- Bug - Resolved a bug where sending a signal to a container caused the agent to treat the container as dead.
- Bug - Fixed a potential deadlock in docker_task_engine.
- Feature - Task cleanup wait time is now configurable.
- Enhancement - Improved testing for HTTP handler tests.
- Enhancement - Updated AWS SDK to v.1.0.11.
- Bug - Fixed a race condition in a docker-task-engine test.
- Bug - Fixed an issue where dockerID was not persisted in the case of an error.
- Enhancement - Increase
docker inspect
timeout to improve reliability under some workloads. - Enhancement - Increase connect timeout for websockets to improve reliability under some workloads.
- Bug - Fixed memory leak in telemetry ticker loop.
- Feature - Add support for pulling from Amazon EC2 Container Registry.
- Bug - Resolved an issue where containers could be incorrectly assumed stopped when an OOM event was emitted by Docker.
- Bug - Fixed an issue where a crash could cause recently-created containers to become untracked.
- Feature - Add experimental HTTP proxy support.
- Enhancement - No longer erroneously store an archive of all logs in the container, greatly decreasing memory and CPU usage when rotating at the hour.
- Enhancement - Increase
docker create
timeout to improve reliability under some workloads. - Bug - Resolved an issue where private repositories required a schema in
AuthData
to work. - Bug - Fixed issue whereby metric submission could fail and never retry.
- Feature - Add support for additional Docker features.
- Feature - Detect and register capabilities.
- Feature - Add -license flag and /license handler.
- Enhancement - Properly handle throttling.
- Enhancement - Make it harder to accidentally expose sensitive data.
- Enhancement - Increased reliability in functional tests.
- Bug - Fixed potential divide-by-zero error with metrics.
- Feature - Telemetry reporting for Services and Clusters.
- Bug - Fixed an issue where some network errors would cause a panic.
- Feature - Add debug handler for SIGUSR1.
- Enhancement - Trim untrusted cert from CA bundle.
- Enhancement - Add retries to EC2 Metadata fetches.
- Enhancement - Logging improvements.
- Bug - Resolved an issue with ACS heartbeats.
- Bug - Fixed memory leak in ACS payload handler.
- Bug - Fixed multiple deadlocks.
- Feature - Add support for re-registering a container instance.
- Security issue - Avoid logging configured AuthData at the debug level on startup
- Feature - Add configuration option for reserving memory from the ECS Agent
- Feature - UDP support for port bindings.
- Feature - Set labels on launched containers with
task-arn
,container-name
,task-definition-family
, andtask-definition-revision
. - Enhancement - Logging improvements.
- Bug - Improved the behavior when CPU shares in a
Container Definition
are set to 0. - Bug - Fixed an issue where
BindIP
could be reported incorrectly. - Bug - Resolved an issue computing API endpoint when region is provided.
- Bug - Fixed an issue where not specifiying a tag would pull all image tags.
- Bug - Resolved an issue where some logs would not flush on exit.
- Bug - Resolved an issue where some instance identity documents would fail to parse.
- Feature - Logs rotate hourly and log file names are suffixed with timestamp.
- Enhancement - Improve error messages for containers (visible as 'reason' in describe calls).
- Enhancement - Be more permissive in configuration regarding whitespace.
- Enhancement - Docker 1.6 support.
- Bug - Resolve an issue where data-volume containers could result in containers stuck in PENDING.
- Bug - Fixed an issue where unknown images resulted in containers stuck in PENDING.
- Bug - Correctly sequence task changes to avoid resource contention. For example, stopping and starting a container using a host port should work reliably now.
- Feature - Added the ability to update via ACS when running under amazon-ecs-init.
- Feature - Added version information (available via the version flag or the introspection API).
- Enhancement - Clarified reporting of task state in introspection API.
- Bug - Fix a lock scoping issue that could cause an invalid checkpoint file to be written.
- Bug - Correctly recognize various fatal messages from ACS to error out more cleanly.
- Feature - Volume support for 'host' and 'empty' volumes.
- Feature - Support for specifying 'VolumesFrom' other containers within a task.
- Feature - Checkpoint state, including ContainerInstance and running tasks, to disk so that agent restarts do not leave dangling containers.
- Feature - Add a "/tasks" endpoint to the introspection API.
- Feature - Add basic support for DockerAuth.
- Feature - Remove stopped ECS containers after a few hours.
- Feature - Send a "reason" string for some of the errors that might occur while running a container.
- Bug - Resolve several issues where a container would remain stuck in PENDING.
- Bug - Correctly set 'EntryPoint' for containers when configured.
- Bug - Fix an issue where exit codes would not be sent properly.
- Bug - Fix an issue where containers with multiple ports EXPOSEd, but not all forwarded, would not start.
- Bug - Worked around an issue preventing some tasks to start due to devicemapper issues.