Automating the deployment
In this section, we’ll shift our focus from building our application and its environment to implementing deployment automations to efficiently provision our solution to AWS. Container-based architectures involve three core deployment motions. First, we must create and publish container images to a container registry. Next, we must provision the Kubernetes cluster environment where containers will be hosted. Finally, we must deploy the Kubernetes resources that will create the containers within Kubernetes pods and reference the container images we published.
Docker
Like the VM image that we built with Packer in the previous chapter, the container image acts as an immutable artifact that contains a versioned copy of the application code and operating system configuration. We need to update this artifact every time something changes in either the application code or the operating system configuration:
on: push: branches: - main ...