SlideShare a Scribd company logo
Introduction to DevOps. Continuous
Integration
Myroslav Dmytrus
.Net developer at Binary Studio
Terms
Continuous
integration
Continuous delivery /
continuous deployment
DevOps
What is Continuous integration?
● A development methodology
● Of daily developer integrations
● Verified by automated builds
● Every commit triggers a build
− As soon as you have completed an independent functionality
− A full build on another, empty machine
Review
User 1
User 2
Commit
Commit
Repository CI Server
Integration Build
Machine
Feedback
Mechanism
Why use continuous integration
● Automate the build
● Make the build self testing
● Keep the build fast
● Fix Broken Builds Immediately
● Every Commit Should Build the Mainline on an
Integration Machine
● Maintain a Single Repository
● Everyone Commits To the Mainline Every Day
● Test in a clone of the production environment
● Make it Easy for Anyone to Get the Latest Executable
● Everyone can see what's happening
● Automate deployment
Self-testing build
● Directly go from source to running build
− No manual copying
− No click on dialog boxes
− No configuration file editing
● Test with
− Unit tests
− Functional tests (web tests)
− Performance tests
● Responsible persons should be notified when anything fails
Tools
Jenkins
Continuous Delivery
● Continuous delivery/Continuous deployment
● Continuous, successful and repeatable methodology to
deploying code
● Automated the steps of taking checked in code and
making it run on production servers, used by customers
Continuous Integration
8 Principles of Continuous Delivery
● The process for releasing/deploying software MUST be repeatable and
reliable
● Automate everything
● If somethings difficult or painful, do it more often
● Keep everything in source control
● Done means “released”
● Build quality in
● Everybody has responsibility for the release process
● Improve continuously
Continuous Delivery Vs. Continuous Deployment
Self-hosting /
On premise
Virtual machines docker
Server
Hypervisor
Host OS
kernel
bins/libs
app
kernel
bins/libs
app
Server
Host OS
bins/libs
app
bins/libs
app
VM
container
image container
run
OS
Software
Application
Docker file
build
DevOps
Development Operations
Sales
Marketing
Q/A
Consulting
Management
Leadership
Customers
DevOps
DevOps
DevOps: the three stage conversation
List of DevOps Practices
● Infrastructure as Code (IaC)
● Continuous Integration
● Automated Testing
● Continuous Deployment
● Release Management
● App Performance Monitoring
● Load Testing & Auto-Scale
● Automated Environment Deprovisioning
● Automated Recovery
Introduction to DevOps. Continuous Integration by Myroslav Dmytrus

More Related Content

What's hot

CI/CD
CI/CDCI/CD
CI/CD
AmitDhodi
 
Jenkins CI presentation
Jenkins CI presentationJenkins CI presentation
Jenkins CI presentation
Jonathan Holloway
 
Getting started with Jenkins
Getting started with JenkinsGetting started with Jenkins
Getting started with Jenkins
Edureka!
 
Jenkins
JenkinsJenkins
Jenkins
Roger Xia
 
Jenkins Tutorial.pdf
Jenkins Tutorial.pdfJenkins Tutorial.pdf
Jenkins Tutorial.pdf
devtestervicky
 
Jenkins tutorial
Jenkins tutorialJenkins tutorial
Jenkins tutorial
HarikaReddy115
 
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
Edureka!
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
Ahmed M. Gomaa
 
"DevOps > CI+CD "
"DevOps > CI+CD ""DevOps > CI+CD "
"DevOps > CI+CD "
Innovation Roots
 
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
Edureka!
 
Fundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CDFundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CD
Batyr Nuryyev
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
Troublemaker Khunpech
 
Jenkins
JenkinsJenkins
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for Testing
Mukta Aphale
 
Yale Jenkins Show and Tell
Yale Jenkins Show and TellYale Jenkins Show and Tell
Yale Jenkins Show and Tell
E. Camden Fisher
 
Building a CICD pipeline for deploying to containers
Building a CICD pipeline for deploying to containersBuilding a CICD pipeline for deploying to containers
Building a CICD pipeline for deploying to containers
Amazon Web Services
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
Edureka!
 
Jenkins
JenkinsJenkins
CI/CD with Github Actions
CI/CD with Github ActionsCI/CD with Github Actions
CI/CD with Github Actions
Md. Minhazul Haque
 
Transforming Organizations with CI/CD
Transforming Organizations with CI/CDTransforming Organizations with CI/CD
Transforming Organizations with CI/CD
Cprime
 

What's hot (20)

CI/CD
CI/CDCI/CD
CI/CD
 
Jenkins CI presentation
Jenkins CI presentationJenkins CI presentation
Jenkins CI presentation
 
Getting started with Jenkins
Getting started with JenkinsGetting started with Jenkins
Getting started with Jenkins
 
Jenkins
JenkinsJenkins
Jenkins
 
Jenkins Tutorial.pdf
Jenkins Tutorial.pdfJenkins Tutorial.pdf
Jenkins Tutorial.pdf
 
Jenkins tutorial
Jenkins tutorialJenkins tutorial
Jenkins tutorial
 
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
 
"DevOps > CI+CD "
"DevOps > CI+CD ""DevOps > CI+CD "
"DevOps > CI+CD "
 
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
Jenkins Pipeline Tutorial | Continuous Delivery Pipeline Using Jenkins | DevO...
 
Fundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CDFundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CD
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
 
Jenkins
JenkinsJenkins
Jenkins
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for Testing
 
Yale Jenkins Show and Tell
Yale Jenkins Show and TellYale Jenkins Show and Tell
Yale Jenkins Show and Tell
 
Building a CICD pipeline for deploying to containers
Building a CICD pipeline for deploying to containersBuilding a CICD pipeline for deploying to containers
Building a CICD pipeline for deploying to containers
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
 
Jenkins
JenkinsJenkins
Jenkins
 
CI/CD with Github Actions
CI/CD with Github ActionsCI/CD with Github Actions
CI/CD with Github Actions
 
Transforming Organizations with CI/CD
Transforming Organizations with CI/CDTransforming Organizations with CI/CD
Transforming Organizations with CI/CD
 

Viewers also liked

Carignano serrani dacrema 2do c 008
Carignano serrani dacrema 2do c 008Carignano serrani dacrema 2do c 008
Carignano serrani dacrema 2do c 008
francesca serrani
 
Jasmin Schober-Howorka - Family Constellation and Past Lives
Jasmin Schober-Howorka - Family Constellation and Past LivesJasmin Schober-Howorka - Family Constellation and Past Lives
Jasmin Schober-Howorka - Family Constellation and Past Lives
Family Constellation
 
Taller ecuador fb2 14
Taller ecuador fb2 14Taller ecuador fb2 14
Taller ecuador fb2 14
medico
 
Aspectos Generales de la Eutrofización
Aspectos Generales de la EutrofizaciónAspectos Generales de la Eutrofización
Aspectos Generales de la Eutrofización
José Batista
 
Eval avril
Eval avrilEval avril
Eval avril
KokoNax
 
Historia del computador
Historia del computadorHistoria del computador
Historia del computador
carolinasanchezmendez
 
MoPub Marketplace Report: Q1 2015
MoPub Marketplace Report: Q1 2015MoPub Marketplace Report: Q1 2015
MoPub Marketplace Report: Q1 2015
MoPub
 
Who not to market to
Who not to market toWho not to market to
Who not to market to
Enis Berk Çoban
 

Viewers also liked (8)

Carignano serrani dacrema 2do c 008
Carignano serrani dacrema 2do c 008Carignano serrani dacrema 2do c 008
Carignano serrani dacrema 2do c 008
 
Jasmin Schober-Howorka - Family Constellation and Past Lives
Jasmin Schober-Howorka - Family Constellation and Past LivesJasmin Schober-Howorka - Family Constellation and Past Lives
Jasmin Schober-Howorka - Family Constellation and Past Lives
 
Taller ecuador fb2 14
Taller ecuador fb2 14Taller ecuador fb2 14
Taller ecuador fb2 14
 
Aspectos Generales de la Eutrofización
Aspectos Generales de la EutrofizaciónAspectos Generales de la Eutrofización
Aspectos Generales de la Eutrofización
 
Eval avril
Eval avrilEval avril
Eval avril
 
Historia del computador
Historia del computadorHistoria del computador
Historia del computador
 
MoPub Marketplace Report: Q1 2015
MoPub Marketplace Report: Q1 2015MoPub Marketplace Report: Q1 2015
MoPub Marketplace Report: Q1 2015
 
Who not to market to
Who not to market toWho not to market to
Who not to market to
 

Similar to Introduction to DevOps. Continuous Integration by Myroslav Dmytrus

Continuous integration (eng)
Continuous integration (eng)Continuous integration (eng)
Continuous integration (eng)
Anatoliy Okhotnikov
 
Introduction to Continuous Integration
Introduction to Continuous IntegrationIntroduction to Continuous Integration
Introduction to Continuous Integration
Hùng Nguyễn Huy
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
Alea Soluciones, S.L.
 
Continuous integration CloudParty 21 may 2014 - Milan
Continuous integration CloudParty 21 may 2014 - MilanContinuous integration CloudParty 21 may 2014 - Milan
Continuous integration CloudParty 21 may 2014 - Milan
Simone Pasquini
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
shahidafrith
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
MahmoudAlnmr1
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
Steve Povilaitis
 
Continuous integration & Continuous Delivery @DeVz
Continuous integration & Continuous Delivery @DeVzContinuous integration & Continuous Delivery @DeVz
Continuous integration & Continuous Delivery @DeVz
Denis Ristic
 
Transition from CI to CD
Transition from CI to CDTransition from CI to CD
Transition from CI to CD
Nanjekye Joannah
 
Jenkins – przyjaciel każdego testera.
Jenkins – przyjaciel każdego testera.Jenkins – przyjaciel każdego testera.
Jenkins – przyjaciel każdego testera.
Future Processing
 
Continuous Integration and Delivery
Continuous Integration and DeliveryContinuous Integration and Delivery
Continuous Integration and Delivery
Brandon Cornett
 
DevOps overview 2019-04-13 Nelkinda April Meetup
DevOps overview  2019-04-13 Nelkinda April MeetupDevOps overview  2019-04-13 Nelkinda April Meetup
DevOps overview 2019-04-13 Nelkinda April Meetup
Shweta Sadawarte
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
Basma Alkerm
 
Software Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery ApproachSoftware Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery Approach
Giovanni Toraldo
 
Continuous integration, delivery & deployment
Continuous integration,  delivery & deploymentContinuous integration,  delivery & deployment
Continuous integration, delivery & deployment
Martijn van der Kamp
 
Implementing Continuous Integration in .NET for Cheapskates
Implementing Continuous Integration in .NET for CheapskatesImplementing Continuous Integration in .NET for Cheapskates
Implementing Continuous Integration in .NET for Cheapskates
mhenroid
 
Continuous Integration Approach
Continuous Integration ApproachContinuous Integration Approach
Continuous Integration Approach
Nigel Thurlow
 
Continuous integration introduction
Continuous integration introductionContinuous integration introduction
Continuous integration introduction
Yoram Michaeli
 
Why NXTware Remote for Jenkins
Why NXTware Remote for JenkinsWhy NXTware Remote for Jenkins
Why NXTware Remote for Jenkins
ecubemarketing
 
Continuous Delivery Presentation
Continuous Delivery PresentationContinuous Delivery Presentation
Continuous Delivery Presentation
Mauricio Ferreyra
 

Similar to Introduction to DevOps. Continuous Integration by Myroslav Dmytrus (20)

Continuous integration (eng)
Continuous integration (eng)Continuous integration (eng)
Continuous integration (eng)
 
Introduction to Continuous Integration
Introduction to Continuous IntegrationIntroduction to Continuous Integration
Introduction to Continuous Integration
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Continuous integration CloudParty 21 may 2014 - Milan
Continuous integration CloudParty 21 may 2014 - MilanContinuous integration CloudParty 21 may 2014 - Milan
Continuous integration CloudParty 21 may 2014 - Milan
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
 
Continuous integration & Continuous Delivery @DeVz
Continuous integration & Continuous Delivery @DeVzContinuous integration & Continuous Delivery @DeVz
Continuous integration & Continuous Delivery @DeVz
 
Transition from CI to CD
Transition from CI to CDTransition from CI to CD
Transition from CI to CD
 
Jenkins – przyjaciel każdego testera.
Jenkins – przyjaciel każdego testera.Jenkins – przyjaciel każdego testera.
Jenkins – przyjaciel każdego testera.
 
Continuous Integration and Delivery
Continuous Integration and DeliveryContinuous Integration and Delivery
Continuous Integration and Delivery
 
DevOps overview 2019-04-13 Nelkinda April Meetup
DevOps overview  2019-04-13 Nelkinda April MeetupDevOps overview  2019-04-13 Nelkinda April Meetup
DevOps overview 2019-04-13 Nelkinda April Meetup
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Software Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery ApproachSoftware Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery Approach
 
Continuous integration, delivery & deployment
Continuous integration,  delivery & deploymentContinuous integration,  delivery & deployment
Continuous integration, delivery & deployment
 
Implementing Continuous Integration in .NET for Cheapskates
Implementing Continuous Integration in .NET for CheapskatesImplementing Continuous Integration in .NET for Cheapskates
Implementing Continuous Integration in .NET for Cheapskates
 
Continuous Integration Approach
Continuous Integration ApproachContinuous Integration Approach
Continuous Integration Approach
 
Continuous integration introduction
Continuous integration introductionContinuous integration introduction
Continuous integration introduction
 
Why NXTware Remote for Jenkins
Why NXTware Remote for JenkinsWhy NXTware Remote for Jenkins
Why NXTware Remote for Jenkins
 
Continuous Delivery Presentation
Continuous Delivery PresentationContinuous Delivery Presentation
Continuous Delivery Presentation
 

More from Binary Studio

Academy PRO: D3, part 3
Academy PRO: D3, part 3Academy PRO: D3, part 3
Academy PRO: D3, part 3
Binary Studio
 
Academy PRO: D3, part 1
Academy PRO: D3, part 1Academy PRO: D3, part 1
Academy PRO: D3, part 1
Binary Studio
 
Academy PRO: Cryptography 3
Academy PRO: Cryptography 3Academy PRO: Cryptography 3
Academy PRO: Cryptography 3
Binary Studio
 
Academy PRO: Cryptography 1
Academy PRO: Cryptography 1Academy PRO: Cryptography 1
Academy PRO: Cryptography 1
Binary Studio
 
Academy PRO: Advanced React Ecosystem. MobX
Academy PRO: Advanced React Ecosystem. MobXAcademy PRO: Advanced React Ecosystem. MobX
Academy PRO: Advanced React Ecosystem. MobX
Binary Studio
 
Academy PRO: Docker. Part 4
Academy PRO: Docker. Part 4Academy PRO: Docker. Part 4
Academy PRO: Docker. Part 4
Binary Studio
 
Academy PRO: Docker. Part 2
Academy PRO: Docker. Part 2Academy PRO: Docker. Part 2
Academy PRO: Docker. Part 2
Binary Studio
 
Academy PRO: Docker. Part 1
Academy PRO: Docker. Part 1Academy PRO: Docker. Part 1
Academy PRO: Docker. Part 1
Binary Studio
 
Binary Studio Academy 2017: JS team project - Orderly
Binary Studio Academy 2017: JS team project - OrderlyBinary Studio Academy 2017: JS team project - Orderly
Binary Studio Academy 2017: JS team project - Orderly
Binary Studio
 
Binary Studio Academy 2017: .NET team project - Unicorn
Binary Studio Academy 2017: .NET team project - UnicornBinary Studio Academy 2017: .NET team project - Unicorn
Binary Studio Academy 2017: .NET team project - Unicorn
Binary Studio
 
Academy PRO: React native - miscellaneous
Academy PRO: React native - miscellaneousAcademy PRO: React native - miscellaneous
Academy PRO: React native - miscellaneous
Binary Studio
 
Academy PRO: React native - publish
Academy PRO: React native - publishAcademy PRO: React native - publish
Academy PRO: React native - publish
Binary Studio
 
Academy PRO: React native - navigation
Academy PRO: React native - navigationAcademy PRO: React native - navigation
Academy PRO: React native - navigation
Binary Studio
 
Academy PRO: React native - building first scenes
Academy PRO: React native - building first scenesAcademy PRO: React native - building first scenes
Academy PRO: React native - building first scenes
Binary Studio
 
Academy PRO: React Native - introduction
Academy PRO: React Native - introductionAcademy PRO: React Native - introduction
Academy PRO: React Native - introduction
Binary Studio
 
Academy PRO: Push notifications. Denis Beketsky
Academy PRO: Push notifications. Denis BeketskyAcademy PRO: Push notifications. Denis Beketsky
Academy PRO: Push notifications. Denis Beketsky
Binary Studio
 
Academy PRO: Docker. Lecture 4
Academy PRO: Docker. Lecture 4Academy PRO: Docker. Lecture 4
Academy PRO: Docker. Lecture 4
Binary Studio
 
Academy PRO: Docker. Lecture 3
Academy PRO: Docker. Lecture 3Academy PRO: Docker. Lecture 3
Academy PRO: Docker. Lecture 3
Binary Studio
 
Academy PRO: Docker. Lecture 2
Academy PRO: Docker. Lecture 2Academy PRO: Docker. Lecture 2
Academy PRO: Docker. Lecture 2
Binary Studio
 
Academy PRO: Docker. Lecture 1
Academy PRO: Docker. Lecture 1Academy PRO: Docker. Lecture 1
Academy PRO: Docker. Lecture 1
Binary Studio
 

More from Binary Studio (20)

Academy PRO: D3, part 3
Academy PRO: D3, part 3Academy PRO: D3, part 3
Academy PRO: D3, part 3
 
Academy PRO: D3, part 1
Academy PRO: D3, part 1Academy PRO: D3, part 1
Academy PRO: D3, part 1
 
Academy PRO: Cryptography 3
Academy PRO: Cryptography 3Academy PRO: Cryptography 3
Academy PRO: Cryptography 3
 
Academy PRO: Cryptography 1
Academy PRO: Cryptography 1Academy PRO: Cryptography 1
Academy PRO: Cryptography 1
 
Academy PRO: Advanced React Ecosystem. MobX
Academy PRO: Advanced React Ecosystem. MobXAcademy PRO: Advanced React Ecosystem. MobX
Academy PRO: Advanced React Ecosystem. MobX
 
Academy PRO: Docker. Part 4
Academy PRO: Docker. Part 4Academy PRO: Docker. Part 4
Academy PRO: Docker. Part 4
 
Academy PRO: Docker. Part 2
Academy PRO: Docker. Part 2Academy PRO: Docker. Part 2
Academy PRO: Docker. Part 2
 
Academy PRO: Docker. Part 1
Academy PRO: Docker. Part 1Academy PRO: Docker. Part 1
Academy PRO: Docker. Part 1
 
Binary Studio Academy 2017: JS team project - Orderly
Binary Studio Academy 2017: JS team project - OrderlyBinary Studio Academy 2017: JS team project - Orderly
Binary Studio Academy 2017: JS team project - Orderly
 
Binary Studio Academy 2017: .NET team project - Unicorn
Binary Studio Academy 2017: .NET team project - UnicornBinary Studio Academy 2017: .NET team project - Unicorn
Binary Studio Academy 2017: .NET team project - Unicorn
 
Academy PRO: React native - miscellaneous
Academy PRO: React native - miscellaneousAcademy PRO: React native - miscellaneous
Academy PRO: React native - miscellaneous
 
Academy PRO: React native - publish
Academy PRO: React native - publishAcademy PRO: React native - publish
Academy PRO: React native - publish
 
Academy PRO: React native - navigation
Academy PRO: React native - navigationAcademy PRO: React native - navigation
Academy PRO: React native - navigation
 
Academy PRO: React native - building first scenes
Academy PRO: React native - building first scenesAcademy PRO: React native - building first scenes
Academy PRO: React native - building first scenes
 
Academy PRO: React Native - introduction
Academy PRO: React Native - introductionAcademy PRO: React Native - introduction
Academy PRO: React Native - introduction
 
Academy PRO: Push notifications. Denis Beketsky
Academy PRO: Push notifications. Denis BeketskyAcademy PRO: Push notifications. Denis Beketsky
Academy PRO: Push notifications. Denis Beketsky
 
Academy PRO: Docker. Lecture 4
Academy PRO: Docker. Lecture 4Academy PRO: Docker. Lecture 4
Academy PRO: Docker. Lecture 4
 
Academy PRO: Docker. Lecture 3
Academy PRO: Docker. Lecture 3Academy PRO: Docker. Lecture 3
Academy PRO: Docker. Lecture 3
 
Academy PRO: Docker. Lecture 2
Academy PRO: Docker. Lecture 2Academy PRO: Docker. Lecture 2
Academy PRO: Docker. Lecture 2
 
Academy PRO: Docker. Lecture 1
Academy PRO: Docker. Lecture 1Academy PRO: Docker. Lecture 1
Academy PRO: Docker. Lecture 1
 

Recently uploaded

Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Requirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional SafetyRequirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional Safety
Ayan Halder
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
GohKiangHock
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
Odoo ERP Vs. Traditional ERP Systems – A Comparative Analysis
Odoo ERP Vs. Traditional ERP Systems – A Comparative AnalysisOdoo ERP Vs. Traditional ERP Systems – A Comparative Analysis
Odoo ERP Vs. Traditional ERP Systems – A Comparative Analysis
Envertis Software Solutions
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
VALiNTRY360
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 

Recently uploaded (20)

Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Requirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional SafetyRequirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional Safety
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
Odoo ERP Vs. Traditional ERP Systems – A Comparative Analysis
Odoo ERP Vs. Traditional ERP Systems – A Comparative AnalysisOdoo ERP Vs. Traditional ERP Systems – A Comparative Analysis
Odoo ERP Vs. Traditional ERP Systems – A Comparative Analysis
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 

Introduction to DevOps. Continuous Integration by Myroslav Dmytrus

Editor's Notes

  1. Головні терміни, щоб було зрозуміло про що ми будемо говорити кожний термін розширяє попередній
  2. Continuous Integration це практика розробки програмного забезпечення, де члени команди інтегрують свою роботу часто, як правило, кожна людина інтегрує принаймні щодня - що призводить до виникнення кількох інтеграцій в день. Кожна інтеграція перевіряється за допомогою автоматизованої збірки (включаючи тести) для виявлення помилок інтеграції якомога швидше. Багато команд вважають, що цей підхід допомагаю значно скоротити проблеми інтеграції та дозволяє команді розробки програмного забезпечення розвивати продукт швидкими темпами.
  3. на зображенні це буде виглядати приблизно так. Є багато етапів де можуть виникнути проблеми в білді. Хтось закомітив зміни скоріше за тебе і змінив логіку яку ти використовував, білд може зламатись. Ти мерджиш виправляєш зміни, якщо код пересікався. Пушиш все на репозиторій. Де CI білдить проект. Якщо все гаразд, приходить нотіфікації що все успішно, якщо є проблеми потрібно здійснити повторну перевірку коду і знову все закомітити. Потім в чергу вступають тести, тести перевіряють чи вся логіка працює як планувались і чи нічого не зламалось в ході наших змін. (???? щоб не було ситуації коли подмали що потім це можна поправити і воно викатується на продакшн)
  4. головні переваги і чому варто використовувати все білдиться автоматично білд теститься самостійно білд є доволі швидким білди ремонтуються дуже швидко кодний коміт білдить головну гілку на інтеграціїній машині
  5. тести відбуваються в копії продакшина всі бачать які справи з білдом автоматиний деплой все міститься в одному ропозиторії всі комітять в голону гілку кожного дня легкий доступ до найновішого продукту Інтеграційні помилки виявляються на ранніх стадіях і легко відстежити через невеликі наборів змін. Це економить час і гроші протягом життя проекту. ящо виникають критичні помилки розробник завжди може відкотити проект назад через те що зміни були незначні Постійна наявність "поточного" білда для тестування, демо або релізу часта перевірка заставляє розробника робити модулі, і не робити їх надто складними велика кількість тестів допомагає воявити проблему на ранньому етапі
  6. //головна ідеологія що все повинно виконуватись автоматично, сомоконтроль збірки проект білдиться з сорсів, з репозиторію. Ніяких проміжних і часткових замін, ніяких втручань з сторни користувача, ніяких редагувань файлів для зміни конфігурації проект можна пестити будь якими тестами: юніт, функціональними, продуктивності… Люди які відповідають за проект завжди в курсі всього що відбувається і хто в цьому винний
  7. так виглядає вся робота CI перед білдом може мідбуваится перевірка коду на відповідність якимось правилам після білда також можуть бути якісь екшини, наприклад створення інсталера
  8. я знаю що на своїх проектах дехто мав СІ є багато різних інструментів, як платних так і безплатних
  9. все розширяється плагінами, все просто настроюється з допомогою if. Кожен крок окремо настроюється
  10. Continuous delivery в основному логічне продовження Continuous Integration - це більш цілісне рішення, ніж C.I. так, як він містить набагато більше, ніж просто розробку програмного забезпечення. Постійна, успішна і повторювана методологія для деплою продукту автоматизаця кроків для перевірки коду і запуск його на продакшині
  11. так виглядає весь процес CD. як я й говорив CD містить в собі СІ ci може тригирити різні stage машини з різними завданнями. App може диплоїтись на різні тестові машини для прогонки і провірки роботи застосунку. Це дає додаткову стабільніст для продукту (???? more about staging)
  12. процес має бути повторювальним і надійним все має бути автоматично якщо щось скадне і болюче, робіть це частіше - це приведе до того що ви краще в цьому розбиретесь і в кінці кінців автоматизуєте все в репозиторії Done means “released”. Процес не буде завершений поки код не буде в користувача Build quality in! Блок тестового покриття, стиль коду, порушення правил, вимірювання складності Everybody has responsibility for the release process. Програма, що працює на ноутбуці розробників не заробить будь-які гроші для компанії. Аналогічним чином, проект без плану розвитку ніколи не будуть зарелізені, і знову не зароблять гроші. Компанії роблять гроші, надаючи продукти їх клієнтам, тому процес має бути цікавим для всіх. Кожен має думати про те як зробити продукт готовим для продажу Improve continuously. завжди вдосконалювати і підримувати
  13. де можна хостити застосунки? на власних серверах, або використовувати клауди. підключатись по ssh і передавати всі необхідні файли Якщо on premises то можуть виникати деякі проблеми, наприклад якщо ми вокористовуємо iis і декілька сайтів хоститься на одній машині додатки не є ізольованими. Якщо нам потрібно хостити декілька одинакових додатків, і ми маємо одну машину виникають проблеми, або щось міняти або використовувати віртуальні машини.
  14. але є рішення, яке дозволяє на одній машині хостити декілька додатків так ніби вони містяться на різних машинах
  15. Фізичний сервер -> він має якусь OS -> Гипервизор (англ. Hypervisor) або Монітор віртуальних машин (в комп'ютерах) - програма або апаратна схема, що забезпечує або дозволяє одночасне, паралельне виконання декількох операційних систем на одному і тому ж хост-комп'ютері -> ядро віртуальної машини -> ліби необхідні для роботи -> сам застосунок на противагу doker Фізичний сервер -> він має якусь OS -> ліби необхідні для роботи -> сам застосунок це значно спрощеє роботу. з докер файлами легко процювати. Їх можна формуваит і переміщувати куди необхідно, заміна одного докер файла на інший відбувається майже миттєво. Докер це новий стандарт для хосту застосунків він з’явився не так дано 2013 рік, але активно набуває популярності. Зараз вже є можливість хостити doker контейнери на Amazone web services.
  16. побудова нотейнера відбувається наступним чином в нас є докер файл який містить всю інформацію, це файл з всією конфігурацією там вказється що саме буде використовуватись, і що взагалі необхідно зробити. цей фал білдиться в image який містить OS, Soft, App коли заранити імідж ми отримаємо все робочий контейнер в якому крутитися аплікейшн
  17. декілька слів про до devOps і взагалі чого я про них згадав
  18. багато хто і я зокрема вважає що devOps це просто якийсь окремий процес який виконується в процесі розробки, або людина яка виконує якісь обов’язки. Але devops це зв’язкова ланка між розробкою, експлуатацією і ринком. Деякі команди самі інтегрують devOps, а є такі в яких спеціальна людина відповідає за налаштування всього зв’язку і автоматизації в розробці
  19. це все процес для побудови якісного продукту
  20. список практик, і за що відповідає DevOps