Too Long; Didn't Read
Canary deployments are a pattern for rolling out releases to a subset of users or servers. New features and other updates can be tested before it goes live for the entire user base. In this example, we are going to deal with a Flask restful API. We will set up a VPN with public subnets and set up ECS tasks in VPC with private subnets. If no errors reported, we will roll out the new version to the rest of the users. We need to deploy the docker images to ECR image repositories so that ECS would use them to create Task definition.