💻☁Container Workflow: Local Machine to Cloud Plus Raj at AWS Re:Invent


Hello Reader,

A container icebreaker interview question is the fundamental container workflow from the local machine to the cloud. In this edition, we will start with the manual process that every project starts with, then we will show how this manual process gives way to CICD and then how it evolves to a more mature pipeline.

Let's start with understanding the foundational flow first:

  1. Developer writes code, and associated Dockerfile to containerize the code in her local machine
  2. She uses “Docker build” command to create the container image, in her local machine. At this point container image is saved in the local machine
  3. Developer uses “Docker run” command to run the container image, and test out the code running from the container. Developer can repeat Steps 1-3, till the testing goes as per the requirements
  4. Next, developer runs “Docker push” command to push the container image from the local machine to a container registry. Some examples are DockerHub, or Amazon ECR.
  5. Finally, using “Kubectl apply” command, an YAML manifest which has the URL of the container image from the Amazon ECR, is deployed into the running Kubernetes cluster.

This is the manual flow, and most of these steps in real-world projects are automated. Let's take a look at that next on how these manual steps are translated into CICD:

  1. After developer tests the container in local, she checks in Code, Dockerfile, and manifest YAMLs to an application repository. CI tools (e.g., Jenkins) kick off, build the container image and save the image in a container registry such as Amazon ECR.
  2. CD tools (e.g. Jenkins) update the deployment manifest files with the tag of the container image.
  3. CD tools (e.g. Jenkins) execute the command to deploy the manifest files into the cluster, which, in terms, deploys the newly built container in the Amazon EKS cluster.

The above is the foundational CICD. The testing, and security checks are eventually included in the CICD pipeline itself. As a final iteration, let's take a look at that:

​
However, like anything in Kubernetes, it's always evolving. Currently, the trend is to do the CD part with GitOps. And we are seeing many feature releases in that area. But that's for another edition!
​

Raj Speaking in AWS Re:Invent 🎤

Next week, I will be at Las Vegas, USA, Dec 2-6. I will speak there at three sessions including one major breakout session. I will also be at AWS Kubernetes Kiosk on the Expo Floor Wednesday from 1:00 pm - 4:00 pm local time if you want to come and say hi 👋! I will post some pics from the event in the next edition's newsletter.

If you have found this newsletter helpful, and want to support me 🙏:

Checkout my bestselling courses on AWS, System Design, Kubernetes, DevOps, and more: Max discounted links​

AWS SA Bootcamp with Live Classes, Mock Interviews, Hands-On, Resume Improvement and more: https://www.sabootcamp.com/​

Keep learning and keep rocking 🚀,

Raj

Fast Track To Cloud

Free Cloud Interview Guide to crush your next interview. Plus, real-world answers for cloud interviews, and system design from a top AWS Solutions Architect.

Read more from Fast Track To Cloud

Hello Reader, We're just a few hours away from the LIVE SA Bootcamp Workshop! 🕘 Start Time: October 17th 12pm Eastern Time Here's what's coming your way: The No-Code, No-Cert-Overload Blueprint to Becoming an AWS Solutions Architect & FDEI'm breaking down the exact system I've used to help 9 cohorts of IT professionals land AWS Solutions Architect and Gen AI roles including FDE at top companies, without writing a single line of code or drowning in certifications. Cloud migration/modernization...

Hello Reader, Are you thinking about becoming an AWS Solutions Architect and working at top companies? Data shows that Solution Architects earn between $200,000/year and $500,000+/year (screenshots below). The demand for AWS Solutions Architects has never been higher and will continue to rise because there are literally trillions of dollars worth of projects currently running on legacy technologies that need to be migrated to the cloud. When looking into becoming an SA it's really common to...

Hello Reader, “How are you using GenAI in your day-to-day work?” This question shows up in almost every interview now, and almost everyone gives the same answer. “I use GenAI to write code.” “I use it to generate documents.” “I have a bot that automates part of my job.” These are bad answers. Not because they are false, but because they tell the interviewer nothing about you specifically. The prompt is not the differentiator. Anyone can type a prompt into Claude or ChatGPT and get code back....