Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloud Native Application Bundle - DevoxxFR 2021
Search
Yves Brissaud
October 01, 2021
0
360
Cloud Native Application Bundle - DevoxxFR 2021
Presentation (given in French) of Cloud Native Application Bundle – CNAB – and demos using Porter.
Yves Brissaud
October 01, 2021
Tweet
Share
More Decks by Yves Brissaud
See All by Yves Brissaud
The Rise of Local CI Tooling. Thanks AI Coding Agents!
eunomie
0
4
Manifests, blobs et tags : les images de conteneurs enfin digest(es)
eunomie
0
64
Pour une autre idée de la CI, sur la machine du développeur, avec Dagger
eunomie
0
110
container_images.pdf
eunomie
0
130
(DockerCon 23) Container Images: Interactive Deep Dive
eunomie
0
600
(DockerCon 23) What's in my container? Docker scout CLI and CI to the rescue
eunomie
0
250
AlpesCraft 2022 : et si les micro services n'avaient rien à voir avec la technique ?
eunomie
1
250
DevoxxFR 2022 : et si les micro services n'avaient rien à voir avec la technique ?
eunomie
1
560
DevoxxFR 2021: Cloud Native Application Bundle
eunomie
0
110
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Typedesign – Prime Four
hannesfritz
42
2.9k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Thoughts on Productivity
jonyablonski
73
4.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
A Tale of Four Properties
chriscoyier
162
23k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Raft: Consensus for Rubyists
vanstee
140
7.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Transcript
#DevoxxFR Cloud Native Application Bundl e The missing link Yves
Brissaud @_crev_ 1 github.com/eunomie/devoxxfr-2021 speakerdeck.com/eunomie/devoxxfr-2021-cloud-native-application-bundle
Yves Brissaud 🐳 Docker 👷 Engineering (Docker Hub) 💬 @_crev_
2
3 https://www.docker.com/career-openings
#DevoxxFR 4 CNAB?
#DevoxxFR 5 Cloud Nativ e Applicatio n Bundle
Application 6 -Larousse « Program or set of programs to
assist the user of a computer in the processing of a speci fi c task »
Cloud Native 7
Cloud Native 8 pzf.fremantle.org/2010/05/cloud-native.html « to work well in a
cloud environment on top of an infrastructure as a service » ➞ elasticit y ➞ distributed infrastructure
Cloud Native 9 https://gotocph.com/2018/sessions/612 @holly_cummins
Cloud Native 10 Idempotence
Cloud Native 11 -Larousse « Idempotence means an operation will
have the same result when applied one or multiple times »
Cloud Native 12 Idempotence • Infrastructure ‣ AMI, ISO, OVF,
… ‣ Packer
Cloud Native Application 13
Cloud Native Application 14 • n services • VMs, containers,
serverless functions, etc • n databases • n managed services • … On top of elastic resources
Cloud Native Application 15 ‣ Terraform ‣ Kubernetes fi les,
kustomize, Helm ‣ Scripts bash ‣ …
Cloud Native Application 16 Source Code CI Service Image
Deployment instructions Infrastructure as Code
Cloud Native Application 17 Deployment: 1. Get source code in
right version 2. Apply IaC 3. Apply deployment instructions 4. Download service images 5. …
Cloud Native Application Bundle 18 Images IaC Deployment … Bundle
19 Cloud Native Application Bundle • Immutable • Inside a
registry • Self contained ➡ o ff l ine
20 Cloud Native Application Bundle Idempotence • Immutable • Inside
a registry • Self contained ➡ o ff l ine
#DevoxxFR 21 📋 bundle descriptor 📦 application images
📦 invocation image 📦 📦
Application Images 22 Containers you are already using! No change
needed to build or distribute them
Invocation Image 23 ✦ Contains all needed tools ✦ Con
fi guration, templates, etc ✦ Install / upgrade / uninstall 📦 Cloud CLIs Helm Charts Helm CLI Terraform CLI IaC Code Invocation image kubectl
Bundle Descriptor 24 • bundle.json • List application and invocation
images • Parameters • Credentials • Outputs
Artefact fi nal 25 OCI Image
CNAB 26 https://cnab.io/ Open speci fi cations: https://github.com/cnabio/cnab-spec CNAB
Core 1.2.0 CNAB Security 1.0.0
Outils 27 cnab-go: CNAB Core implementation https://github.com/cnabio/cnab-go cnab-to-oci: tool
to convert bundles to OCI images https://github.com/cnabio/cnab-to-oci du ffl e: cli to interact with bundles https://du ffl e.sh porter: higher level tool to create and use bundles https://github.com/getporter/porter https://porter.sh
Porter 28 Made by Deis Labs (microsoft) https://deislabs.io The
most user friendly
Porter 29 ‣ porter.yaml - higher level than bundle.json
- mixins ‣ Create bundle.json, then the OCI image
Demo Wordpress 30
Wordpress 31 • Deploy wordpress and its database • Inside
a con fi gurable kubernetes namespace • Using a helm chart
Demo Airgap 32
Airgap 33 • Embed Helm charts • Embed application images
#DevoxxFR Resources • https://cnab.io • https://cnab.io/community-meetings • #cnab on https://slack.cncf.io
• https://porter.sh • https://porter.sh/community 34
#DevoxxFR Merci 🙏 35 Yves Brissaud @_crev_ github.com/eunomie/devoxxfr-2021 speakerdeck.com/eunomie/devoxxfr-2021-cloud-native-application-bundle