Skip to content

Buildpacks on EKS Walkthrough

Prove buildpacks on EKS — platform-owned image builds, app teams push code only.

Most EKS
Amazon Elastic Kubernetes Service — this lab uses cluster name `cluster-1`.
platforms already have GitOps
Declarative delivery from Git — manifests live in a repository; Argo CD applies changes on sync.
for deploy. The gap is build: Dockerfiles in every repo, CI secrets for ECR, and base-image upgrades chased per service.

Cloud Native Buildpacks
Cloud Native Buildpacks (CNB) — turn application source into OCI images without a Dockerfile per app.
buildpacks.io
centralize that on the platform — one builder, patched stacks, consistent images. kpack
Kubernetes-native build service that runs CNB builds on-cluster and pushes images to a registry.
runs builds on-cluster; CodeCommit
AWS managed Git hosting — GitHub alternative used for app source and deploy manifests in this lab.
and managed Argo CD
EKS Capability for Argo CD — AWS-managed Argo CD that reads CodeCommit via IAM on the capability role.
keep the loop on AWS without GitHub for the pipeline.

End to end: push Go source to CodeCommit → kpack builds with buildpacks → image in ECR
Amazon Elastic Container Registry — stores OCI images built by kpack; EKS pulls from here.
→ Argo CD deploys → Pulse
Sample app in this lab — HTTP service monitor with dashboard, API, and Kubernetes health probes.
in the browser. No Dockerfile in the app repo.

Understand buildpacks

Why Cloud Native Buildpacks
Cloud Native Buildpacks (CNB) — turn application source into OCI images without a Dockerfile per app.
buildpacks.io
replace per-app Dockerfiles and how Paketo
Paketo Buildpacks — mature open-source builders for Go, Node, Java, Python, and more.
builders fit on EKS.

Map the pipeline

CodeCommit
AWS managed Git hosting — GitHub alternative used for app source and deploy manifests in this lab.
kpack
Kubernetes-native build service that runs CNB builds on-cluster and pushes images to a registry.
ECR
Amazon Elastic Container Registry — stores OCI images built by kpack; EKS pulls from here.
managed Argo CD
EKS Capability for Argo CD — AWS-managed Argo CD that reads CodeCommit via IAM on the capability role.
Pulse
Sample app in this lab — HTTP service monitor with dashboard, API, and Kubernetes health probes.
on EKS
Amazon Elastic Kubernetes Service — this lab uses cluster name `cluster-1`.
.

Deploy the lab step by step

Bootstrap AWS, cluster, Argo CD capability, CodeCommit, kpack, Pulse via GitOps, CNB lifecycle, verify Pulse, teardown.

Auth and troubleshooting

IAM paths including IRSA
IAM Roles for Service Accounts — pods use a Kubernetes service account annotated with an IAM role ARN.
, manifest map, and common failure signatures.