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
How Containerized Pipelines Can Boost Your CI/C...
Search
DevOps Gathering
March 11, 2020
Programming
200
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How Containerized Pipelines Can Boost Your CI/CD by Nico Meisenzahl
DevOps Gathering
March 11, 2020
More Decks by DevOps Gathering
See All by DevOps Gathering
Hacking Terraform by Constantin Weisser
devopsgatheringio
1
270
The Road to Reliability: Infrastructure Testing explained by Constantin Weisser
devopsgatheringio
1
310
Take MicroProfile to the Clouds with Quarkus by Dirk Weil
devopsgatheringio
0
220
Tracing - a Journey to Tactical Insights by Florian Kückelkorn
devopsgatheringio
0
290
Testable Kubernetes Operators? by Marcel Müller
devopsgatheringio
0
310
Routing Your Microservices Architecture to Ease DevOps Enterprise Transformation by Manuel Zapf
devopsgatheringio
0
300
The First Decade of DevOps is Over by Konstanin Diener
devopsgatheringio
1
190
From Zero to Hero - Onboarding with GitOps by Mario Kleinsasser
devopsgatheringio
0
170
Building a Graph User-Interface for Malware-Analysis by Stefan Hausotte
devopsgatheringio
0
280
Other Decks in Programming
See All in Programming
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
450
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
750
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.5k
What's New in Android 2026
veronikapj
0
240
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
240
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
160
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
290
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
130
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
3.3k
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
130
その節約、円になってますか?
isamumumu
0
630
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
630
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
190
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
450
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
240
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Invisible Side of Design
smashingmag
301
52k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
920
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
470
Marketing to machines
jonoalderson
1
5.6k
Transcript
How Containerized Pipelines Can Boost Your CI/CD DevOps Gathering, Bochum
2020
Nico Meisenzahl • Senior Cloud & DevOps Consultant at white
duck • Docker Community Leader & GitLab Hero • loves Kubernetes, DevOps and Cloud © white duck GmbH 2020 Phone: +49 8031 230159 0 Email:
[email protected]
Twitter: @nmeisenzahl LinkedIn: https://www.linkedin.com/in/nicomeisenzahl Blog: https://meisenzahl.org
Agenda • containerized pipeline – why? • pipeline workload on
Kubernetes with GitLab CI/CD • image builds on Kubernetes with Kaniko • cloud-native pipelines with Tekton © white duck GmbH 2020
Containerized Pipelines – Why? • for the same reasons why
you should use containers • isolation • dependencies • scalability • immutability • example: your new project needs version X all others still require Y • you can include any kind of build / deploy dependency • NodeJS, .NET Core, Go, Terraform, Ansible… you name it © white duck GmbH 2020
Pipeline job image • contains everything a single pipeline job
needs • binaries, libraries, tools, ... • provide all external dependencies • use a pipeline to build/rebuild it periodically (security fixes!) • you should define fix versions for your dependencies • use caching to speed up your builds © white duck GmbH 2020
Pipeline job image © white duck GmbH 2020
Kubernetes vs. docker run • every pipeline job runs in
a container • based on an image with all requirements for this single job • Build host with Docker daemon (or any other container solution) • GitLab Runner Kubernetes executor • integrates your CI/CD with Kubernetes • runs a pod per job • containing a container with the defined image along with some service containers • allows you to share your compute and scale your pipelines © white duck GmbH 2020
GitLab Runner Kubernetes executor • runs itself in a pod
• needs to be deployed in your Kubernetes Cluster • automatable Helm deployment • schedules job pods • build steps of a pipeline job • prepare → creates pod with build and service containers • pre-build → clones repo, restore cache, download artifacts • build → user build steps • post-build → creates caches and upload artifacts © white duck GmbH 2020
Demo • containerized pipelines on Kubernetes with GitLab Runner ©
white duck GmbH 2020
Image builds on Kubernetes with Kaniko • any Docker-in-Docker solution
has issues • exposing Docker socket • mounting /var/lib/docker • privileged mode • image builds without the need of any privileges or dependencies • runs in a container (gcr.io/kaniko-project/executor) • use build caching to speed up your pipeline • layer caching (layers get pushed pushed to a registry) • base image caching (local mount point) © white duck GmbH 2020
Image builds on Kubernetes with Kaniko © white duck GmbH
2020
Demo • containerized image builds on Kubernetes with Kaniko ©
white duck GmbH 2020
Cloud-native pipelines with Tekton • moves your whole CI/CD into
Kubernetes • uses containers as their building blocks • based on CRDs and Controllers • Tekton Pipelines emerged out of the Knative build project • Continuous Delivery Fundation Graduated project • „CI/CD framework for Kubernetes” • Jenkins X pipelines are based on Tekton • contributions by Google, IBM, RedHat, Cloudbees, TriggerMesh, … © white duck GmbH 2020
Cloud-native pipelines with Tekton • Tekton Triggers can be used
to call a pipeline • push, issue, webhook, …. • Tekton also provides a CLI and Dashboard • get started • https://github.com/tektoncd/pipeline/blob/master/docs/tutorial.md • https://github.com/tektoncd/catalog © white duck GmbH 2020
Demo • cloud-native pipelines with Tekton Pipelines © white duck
GmbH 2020
Questions? Slides: https://www.slideshare.net/nmeisenzahl Demo: https://gitlab.com/groups/containerized-cicd Nico Meisenzahl (Senior Cloud &
DevOps Consultant) Phone: +49 8031 230159 0 Email:
[email protected]
Twitter: @nmeisenzahl LinkedIn: https://www.linkedin.com/in/nicomeisenzahl Blog: https://meisenzahl.org © white duck GmbH 2020