Docker for AWS upgrades

Estimated reading time: 1 minute

To upgrade, apply a new version of the AWS Cloudformation template that powers Docker for AWS. Depending on changes in the next version, an upgrade involves:

  • Changing the AMI backing manager and worker nodes (the Docker engine ships in the AMI)
  • Upgrading service containers
  • Changing the resource setup in the VPC that hosts Docker for AWS

Prerequisites

  • We recommend only attempting upgrades of swarms with at least 3 managers. A 1-manager swarm may not be able to maintain quorum during the upgrade.

  • You can only upgrade one version at a time. Skipping a version during an upgrade is not supported. Downgrades are not tested.

Upgrading

New releases are announced on Release Notes page.

To initiate an update, use either the AWS Console or the AWS cli to initiate a stack update. Use the S3 template URL for the new release and complete the update wizard. This will initiate a rolling upgrade of the Docker swarm, and service state will be maintained during and after the upgrade. Appropriately scaled services should not experience downtime during an upgrade.

Upgrade in AWS console

Note that single containers started (for example) with docker run -d are not preserved during an upgrade. This is because they’re not Docker Swarm objects, but are known only to the individual Docker engines.

Changing instance sizes and other template parameters

In addition to upgrading Docker for AWS from one version to the next you can also use the AWS Update Stack feature to change template parameters such as worker count and instance type. Changing manager count is not supported.

aws, amazon, iaas, tutorial