SlideShare a Scribd company logo
Intro to CI/CD
Michael Irwin - February 8, 2017
First... a history lesson!
The Pareto Principal (the 80/20
rule)
80% of bugs are found in 20% of code
90% of downtime comes from 10% of defects
"80% of the errors and crashes in Windows and O ce
were caused by 20% of the entire pool of bugs
detected." --Microsoft's CEO, 2002
"Microsoft’s own research found that the average user
of Word uses only 8% of the functionality." --
http://www.allaboutagile.com/agile-principle-8-enough-is-enough/
How do we reduce waste?
Intro to CI/CD using Docker
Intro to CI/CD using Docker
Intro to CI/CD using Docker
How would YOU de ne continuous
integration?
Continuous Integration is a
software development practice
where members of a team
integrate their work frequently,
usually each person integrates at
least daily - leading to multiple
integrations per day. Each
integration is veri ed by an
automated build (including test)
to detect integration errors as
quickly as possible.
How would YOU de ne continuous
delivery?
Continuous Delivery is a software
development discipline where
you build software in such a way
that the software can be released
to production at any time.
-- Martin Fowler
Recap
Continuous...
Integration - running automated builds to test
integration of application
Delivery - discipline to be able to release to
production at any time
Deployment - every change goes through the
pipeline and straight to production
What's it look like?
It really depends on your organization!
A fairly typical pipeline...
Developer commits code locally
Pushes code to shared repository
Build server sees change (either via webhook or
polling)
Build server performs build and runs tests
Artifact is created and published
Artifact rolled out to various tiers
What tools exist?
This is obviously not an exhaustive collection...
Why have a pipeline?
More reliable code
Tests are run automatically
Every stage is automated/scripted to reduce error
More frequent merges reduce merge issues
Get feedback quicker
Did a build break? Are tests passing?
Are we developing the right feature?
Morale boost
Engineers love seeing their work being used. Get it
out faster!
Getting Started
We're going to build a pipeline that looks like this...
1. Commit code locally
2. Push to a GitHub repository
3. Docker image built automatically using Docker Cloud
4. Docker image pushed and hosted on Docker Hub
Works very well for open-source types of projects. I use
this exact pipeline for my mikesir87/aws-cli image.
Hands-on time
https://github.com/mikesir87/ci-cd-intro-using-docker

More Related Content

What's hot (20)

PPTX
Continuous delivery applied
Mike McGarr
 
PPTX
Back to basic: continuous integration (Madrid DevOps)
Sergio Navarro Pino
 
PPTX
Industrialization of Android Development (Concept)
Mohamed TAIEB
 
PDF
Build safe environment for software developers
Prayoch Rujira
 
PPTX
Poster - DevOps Planning @ Microsoft
VSTS Community MSFT
 
PPTX
DevQAOps - Surviving in a DevOps World
Winston Laoh
 
PPTX
Poster - DevOps Habits @ Microsoft
VSTS Community MSFT
 
PPTX
Bootstrapping Quality
Michael Roufa
 
PPTX
Advanced deployment scenarios
Sergio Navarro Pino
 
PPTX
Advanced deployment scenarios (netcoreconf)
Sergio Navarro Pino
 
PPTX
CI back to basis
Sergio Navarro Pino
 
PPTX
Outside-in Testing in Vue with Cypress
Josh Justice
 
PPTX
Continuous integration
John Temoty Roca
 
PPT
Continuous Integration
Joseph Wang
 
PPTX
Continuous Delivery
Mike McGarr
 
PDF
Step away from that knife!
Michael Goetz
 
PDF
Speed up your Titanium app development with automated tests - TiConf EU 2014
Emanuele Rampichini
 
PPTX
DevSecCon Tel Aviv 2018 - Security learns to sprint by Tanya Janca
DevSecCon
 
PPTX
DevOps and All the Continuouses w/ Helen Beal
Sonatype
 
PDF
Continuous Deployment Pipeline for Systems at Cascadia IT Conference - 2017-0...
garrett honeycutt
 
Continuous delivery applied
Mike McGarr
 
Back to basic: continuous integration (Madrid DevOps)
Sergio Navarro Pino
 
Industrialization of Android Development (Concept)
Mohamed TAIEB
 
Build safe environment for software developers
Prayoch Rujira
 
Poster - DevOps Planning @ Microsoft
VSTS Community MSFT
 
DevQAOps - Surviving in a DevOps World
Winston Laoh
 
Poster - DevOps Habits @ Microsoft
VSTS Community MSFT
 
Bootstrapping Quality
Michael Roufa
 
Advanced deployment scenarios
Sergio Navarro Pino
 
Advanced deployment scenarios (netcoreconf)
Sergio Navarro Pino
 
CI back to basis
Sergio Navarro Pino
 
Outside-in Testing in Vue with Cypress
Josh Justice
 
Continuous integration
John Temoty Roca
 
Continuous Integration
Joseph Wang
 
Continuous Delivery
Mike McGarr
 
Step away from that knife!
Michael Goetz
 
Speed up your Titanium app development with automated tests - TiConf EU 2014
Emanuele Rampichini
 
DevSecCon Tel Aviv 2018 - Security learns to sprint by Tanya Janca
DevSecCon
 
DevOps and All the Continuouses w/ Helen Beal
Sonatype
 
Continuous Deployment Pipeline for Systems at Cascadia IT Conference - 2017-0...
garrett honeycutt
 

Viewers also liked (11)

PDF
What's New in Docker 1.13?
Michael Irwin
 
PDF
Gradle in 45min
Schalk Cronjé
 
PDF
Gradle - the Enterprise Automation Tool
Izzet Mustafaiev
 
PDF
Making a small QA system with Docker
Naoki AINOYA
 
PDF
Git,Travis,Gradle
Riccardo Rigon
 
PDF
Pluggable Infrastructure with CI/CD and Docker
Bob Killen
 
PDF
Gradle - time for a new build
Igor Khotin
 
PPTX
Gradle
Jadson Santos
 
PDF
Gradle build tool that rocks with DSL JavaOne India 4th May 2012
Rajmahendra Hegde
 
PPTX
Database Migrations with Gradle and Liquibase
Dan Stine
 
PDF
Netflix Nebula - Gradle Summit 2014
Justin Ryan
 
What's New in Docker 1.13?
Michael Irwin
 
Gradle in 45min
Schalk Cronjé
 
Gradle - the Enterprise Automation Tool
Izzet Mustafaiev
 
Making a small QA system with Docker
Naoki AINOYA
 
Git,Travis,Gradle
Riccardo Rigon
 
Pluggable Infrastructure with CI/CD and Docker
Bob Killen
 
Gradle - time for a new build
Igor Khotin
 
Gradle build tool that rocks with DSL JavaOne India 4th May 2012
Rajmahendra Hegde
 
Database Migrations with Gradle and Liquibase
Dan Stine
 
Netflix Nebula - Gradle Summit 2014
Justin Ryan
 
Ad

Similar to Intro to CI/CD using Docker (20)

PPTX
CICD Pipeline - AWS Azure
Ratan Das
 
PPTX
Implementing-Continuous-Integration-and-Deployment-CICD-Pipelines.pptx
significantdirt
 
PDF
Getting to Walk with DevOps
Eklove Mohan
 
PDF
Always ready for release by Bogdan Costea
Bosnia Agile
 
PPTX
Flusso Continuous Integration & Continuous Delivery
Joost van der Griendt
 
PDF
Continuous Everything
Andrea Tino
 
PDF
CI/CD (DevOps) 101
Hazzim Anaya
 
PPTX
Continuous Integration for Beginners
Yüce Çelikel
 
PDF
CI CD Pipeline Interview Questions PDF By ScholarHat
Scholarhat
 
PDF
Continuous Delivery Distilled
Matt Callanan
 
PPTX
CI, CD -Tools to integrate without manual intervention
ajayrajaganeshkayala
 
PDF
Datatree.io Webinar: Continuous Integration & Delivery for Agile Teams
Tara Walker
 
PDF
Continuous Everything
Soumyak Bhattacharyya
 
PPTX
Devops CI-CD pipeline with Containers
NuSpace
 
PDF
Cloud continuous integration- A distributed approach using distinct services
André Agostinho
 
PPTX
Continuous Delivery for Open Source Java projects
Tricode (part of Dept)
 
PPTX
ContinuousDelivery-101
Kishore Bhatia
 
PPTX
DevOps Fest 2020. Сергей Абаничев. Modern CI\CD pipeline with Azure DevOps
DevOps_Fest
 
PPTX
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
Perforce
 
CICD Pipeline - AWS Azure
Ratan Das
 
Implementing-Continuous-Integration-and-Deployment-CICD-Pipelines.pptx
significantdirt
 
Getting to Walk with DevOps
Eklove Mohan
 
Always ready for release by Bogdan Costea
Bosnia Agile
 
Flusso Continuous Integration & Continuous Delivery
Joost van der Griendt
 
Continuous Everything
Andrea Tino
 
CI/CD (DevOps) 101
Hazzim Anaya
 
Continuous Integration for Beginners
Yüce Çelikel
 
CI CD Pipeline Interview Questions PDF By ScholarHat
Scholarhat
 
Continuous Delivery Distilled
Matt Callanan
 
CI, CD -Tools to integrate without manual intervention
ajayrajaganeshkayala
 
Datatree.io Webinar: Continuous Integration & Delivery for Agile Teams
Tara Walker
 
Continuous Everything
Soumyak Bhattacharyya
 
Devops CI-CD pipeline with Containers
NuSpace
 
Cloud continuous integration- A distributed approach using distinct services
André Agostinho
 
Continuous Delivery for Open Source Java projects
Tricode (part of Dept)
 
ContinuousDelivery-101
Kishore Bhatia
 
DevOps Fest 2020. Сергей Абаничев. Modern CI\CD pipeline with Azure DevOps
DevOps_Fest
 
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
Perforce
 
Ad

Recently uploaded (20)

PPTX
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PPTX
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
PPTX
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PDF
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
PDF
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
 
PDF
Odoo CRM vs Zoho CRM: Honest Comparison 2025
Odiware Technologies Private Limited
 
PDF
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
PDF
Alexander Marshalov - How to use AI Assistants with your Monitoring system Q2...
VictoriaMetrics
 
PDF
Online Queue Management System for Public Service Offices in Nepal [Focused i...
Rishab Acharya
 
PPTX
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
PDF
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
PDF
Linux Certificate of Completion - LabEx Certificate
VICTOR MAESTRE RAMIREZ
 
PDF
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
PDF
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PPTX
AEM User Group: India Chapter Kickoff Meeting
jennaf3
 
PDF
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
PPTX
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pptx
Varsha Nayak
 
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
 
Odoo CRM vs Zoho CRM: Honest Comparison 2025
Odiware Technologies Private Limited
 
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
Alexander Marshalov - How to use AI Assistants with your Monitoring system Q2...
VictoriaMetrics
 
Online Queue Management System for Public Service Offices in Nepal [Focused i...
Rishab Acharya
 
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
Linux Certificate of Completion - LabEx Certificate
VICTOR MAESTRE RAMIREZ
 
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
AEM User Group: India Chapter Kickoff Meeting
jennaf3
 
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pptx
Varsha Nayak
 

Intro to CI/CD using Docker

  • 1. Intro to CI/CD Michael Irwin - February 8, 2017
  • 3. The Pareto Principal (the 80/20 rule) 80% of bugs are found in 20% of code 90% of downtime comes from 10% of defects "80% of the errors and crashes in Windows and O ce were caused by 20% of the entire pool of bugs detected." --Microsoft's CEO, 2002 "Microsoft’s own research found that the average user of Word uses only 8% of the functionality." -- http://www.allaboutagile.com/agile-principle-8-enough-is-enough/
  • 4. How do we reduce waste?
  • 8. How would YOU de ne continuous integration?
  • 9. Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is veri ed by an automated build (including test) to detect integration errors as quickly as possible.
  • 10. How would YOU de ne continuous delivery?
  • 11. Continuous Delivery is a software development discipline where you build software in such a way that the software can be released to production at any time. -- Martin Fowler
  • 12. Recap Continuous... Integration - running automated builds to test integration of application Delivery - discipline to be able to release to production at any time Deployment - every change goes through the pipeline and straight to production
  • 13. What's it look like? It really depends on your organization! A fairly typical pipeline... Developer commits code locally Pushes code to shared repository Build server sees change (either via webhook or polling) Build server performs build and runs tests Artifact is created and published Artifact rolled out to various tiers
  • 14. What tools exist? This is obviously not an exhaustive collection...
  • 15. Why have a pipeline? More reliable code Tests are run automatically Every stage is automated/scripted to reduce error More frequent merges reduce merge issues Get feedback quicker Did a build break? Are tests passing? Are we developing the right feature? Morale boost Engineers love seeing their work being used. Get it out faster!
  • 16. Getting Started We're going to build a pipeline that looks like this... 1. Commit code locally 2. Push to a GitHub repository 3. Docker image built automatically using Docker Cloud 4. Docker image pushed and hosted on Docker Hub Works very well for open-source types of projects. I use this exact pipeline for my mikesir87/aws-cli image.