Buildpacks is an open-source technology that provides a platform-independent way to build and package applications. They automate the process of transforming source code into a runnable container image. Buildpacks analyze the application source code, detect the language and dependencies, and then create a container image that includes all the necessary components.
2. Lack of etiquette and manners is a huge turn off.
KnolX Etiquettes
Punctuality
Join the session 5 minutes prior to the session start time. We start on
time and conclude on time!
Feedback
Make sure to submit a constructive feedback for all sessions as it is very
helpful for the presenter.
Silent Mode
Keep your mobile devices in silent mode, feel free to move out of session
in case you need to attend an urgent call.
Avoid Disturbance
Avoid unwanted chit chat during the session.
3. 1. History of Buildpacks.io
2. What are Cloud Native Buildpacks
3. The Goals
4. CN Buildpack Features
5. Buildpack API
6. Buildpack Platform
7. DEMO
4. History of buildpack.io
Origins (2011):
− Buildpacks were first used by Heroku in 2011.
− Heroku used them for deploying applications at that time.
Widespread Adoption:
− Buildpacks became popular and were adopted by many other platforms.
− Notable platforms like Cloud Foundry, Knative, GitLab, and Google App Engine started
using them.
Introduction of CN Buildpacks (2018):
− In 2018, Pivotal and Heroku created CN Buildpacks.
− These introduced standardized buildpacks and became part of the CNCF platform in
October
5. What are Cloud Native Buildpacks
Cloud Native Buildpacks (CNB) are a standardized way of building container images. They automate the
process of transforming application source code into container images that can be run in a cloud-native
environment.
Portable via the OCI standard
Greater modularity
Faster builds
Reproducible image builds
Unprivileged containers
Developed in partnership with Heroku
CNCF project
6. The Goals
Write code
Run apps
Minimal fuss
This has been the goal of app dev teams for the long time.
7. CN Buildpack
Features
Application detection/validation.
Vend dependant components (eg: middleware
stack).
Put application in "stack" (os base)
Create a configuration
Define how the application starts
Output the container
Use smart caching to enable builds and runtime
images
Application Binary interface
Cross repository blob mounitng
Fast is a feature!
Local development
Buildpack provide variety of service to
create an appropriate build and run
environment.
8. Buildpack API
Analysis
Detect
Build
Export
Where an optimal selection of compatible build pack is chosen and a
build plan is created.
Where metadata about OCI Layers generated during a previous build
are made available to buildpacks.
Where buildpacks use that metadata to generate only the OCI layers
that need to be replaced.
Where the remote layers are replaced by the generated layers.
9. Buildpack Platform
Local CLI -> like pack CLI
Plugin -> like Buildpack plugin in Tekton
Cloud app platform -> like Kpack
code
Buidpack 2
Buidpack 1
Build image
Lifecycle
app
dependences
Run image
Builder image
Platform
Build image
+run image
stack
OCI image