SlideShare uma empresa Scribd logo
1 de 37
Introduction to Docker
and Tools
VASILIY FOMICHEV
SOLUTIONSARCHITECT
LASUG ONLINE #1 @vasiliyfomichev2
VASILIY FOMICHEV
SOLUTIONARCHITECT
VERNDALE
• SitecoreTechnology MVP
• Technology enthusiast
• Passionate about innovation
• cmsbestpractices.com
https://www.linkedin.com/in/vasiliyfomichev
@vasiliyfomichev
INTRODUCTION
LASUG ONLINE #1 @vasiliyfomichev3
WHAT ARE WE LOOKING AT?
Today’s development model
What are “containers”
How can docker help in the sitecore world?
Demos
Ubuntu on Docker
Solr on Docker
Mongo on Docker
Docker Machine
Provision Digital Ocean Droplet
Provision AzureVM
Where is this headed?
LASUG ONLINE #1 @vasiliyfomichev4
WHAT’STHE PROBLEM?
LASUG ONLINE #1 @vasiliyfomichev
DEVOPS CHALLENGES
• Local environment setups are getting more complex
• Environment differences allow for bugs in
applications
• Manual setup it too complex and time consuming
• Human error
• Scalability issues on prem
• Inability to reproduce production environment locally
for debugging
• Inability to easily sync all Sitecore environments
• Lack of QA and other types of reproducibility
LASUG ONLINE #1 @vasiliyfomichev6
WHAT ARE “CONTAINERS”?
LASUG ONLINE #1 @vasiliyfomichev
Before Container Standards
LASUG ONLINE #1 @vasiliyfomichev
Shipping Containers Invented
https://en.wikipedia.org/wiki/Malcom_McLean
In 1956, most cargo was loaded and
unloaded by hand. Hand-loading a ship cost
$5.86 a ton.
Malcom McLean born in 1913 developed the
modern intermodal shipping container,
which revolutionized transport and
international trade.
McLean knew "A ship earns money only
when she's at sea," and based his business
on that efficiency.
Using containers, it cost only 16 cents a ton,
a 39-fold savings. Containerization also
greatly reduced the time to load and unload
ships, improving reliability.
LASUG ONLINE #1 @vasiliyfomichev
LASUG ONLINE #1 @vasiliyfomichev
Hosting Containers
LASUG ONLINE #1 @vasiliyfomichev
LASUG ONLINE #1 @vasiliyfomichev
Docker is growing (18,000% growth)
LASUG ONLINE #1 @vasiliyfomichev
Enterprises Rapidly Adopting Docker
Small, 30%
Midsize, 15%
Large, 56%
Company Sizes Using Docker
LASUG ONLINE #1 @vasiliyfomichev
Container !=VM
• VM’s
• Full instances of the entire OS
• Not easily multi-instanced ~SysPrep
• Containers
• Layered elements of the OS + Components
• Easily Duplicated, Start/Stop
• Lightweight OS (Tiny Core Linux &Windows Server Core)
LASUG ONLINE #1 @vasiliyfomichev
How tiny is tiny?
• ~24MB download!Whaaaat?!
• Runs completely from RAM
• Minimal Requirements:
• 46MB of RAM
• i486DX CPU (introduced in 1989, 50MHz, 8KB cache)
• Recommended Requirements:
• 128MB+ of RAM
• Pentium 2 CPU
SUGCON NORTH AMERICA 15
LASUG ONLINE #1 @vasiliyfomichev
Server Core Requirements
• Minimum Requirement:
• 256-512MB of RAM
• 1GHz (x86) or 1.4Ghz (x64)CPU
• Recommended
• 512MB+
• 2GHz+CPU
SUGCON NORTH AMERICA 16
LASUG ONLINE #1 @vasiliyfomichev
Container Comparison
• Immutable infrastructure!
• Fast startup (lightning fast!)
• Portable & light-weight
• A unit of deployment
• Ease of creation
• Each container can become a portion of the entire
app
• May have multiple containers that make up one or more
than one app
LASUG ONLINE #1 @vasiliyfomichev
Why Containers?
Developers
Enable ‘write-once, run-anywhere’ apps
Enables microservice architectures
Great for dev/test of apps and services
(thousands available from Docker)
Reproducibility
Operations
Portability, Portability, Portability
Standardized development, QA, and prod
environments
Abstract differences in OS distributions and
underlying infrastructure
Easily scale-up and scale-down in response to
changing business needs
DevOps
LASUG ONLINE #1 @vasiliyfomichev
Hosting Containers
Locally with:
• Docker Toolbox (Linux)
• Hyper V (Windows)
Physical Servers
• Linux (Linux)
• Windows 2016 TP3
(Windows)
Clouds
• Azure (Linux & Windows)
• Digital Ocean (Linux)
• AWS (Linux)
• Google (Linux)
• Rackspace (Linux)
• …etc.
AzureOn Premises Service ProviderLocally
LASUG ONLINE #1 @vasiliyfomichev
Docker Distribution
LASUG ONLINE #1 @vasiliyfomichev
Dockerfile
LASUG ONLINE #1 @vasiliyfomichev
Windows Server Containers
Creation, deployment, and management
Developers
Containers pushed to
central repository
Operations automates
deployment and
monitors deployed apps
from central repository
Operations collaborates with developers
to provide app metrics and insights
Developers update, iterate,
and deploy updated
containers
LASUG ONLINE #1 @vasiliyfomichev
Infrastructure
Cloud On Premises Service Provider
Container Technologies
Container Management
PowerShell OthersDocker
Development
Environment
s
Others…
LASUG ONLINE #1 @vasiliyfomichevSUGCON NORTH AMERICA 24
SITECORE AND CONTAINERS
LASUG ONLINE #1 @vasiliyfomichev
Mongo on docker
• Simple configuration
– Single instance
– Replica set (development)
• Scaled configuration
– Scale horizontally
– Sharding
– Replica sets
LASUG ONLINE #1 @vasiliyfomichev
Solr on docker
• Simple configuration
– Single instance
– Solr Cloud (development)
• Scaled Configuration
– Scale horizontally
– Sharding
– Replica sets
– Cloud
LASUG ONLINE #1 @vasiliyfomichev
Sitecore on Docker (coming!)
• SimpleConfiguration
– Single instance
– Scaled CD/CM environments (development)
• Scaled configuration
– Highly scaled infrastructure
– Load balanced server instances
LASUG ONLINE #1 @vasiliyfomichev
Docker Hub
• Docker Hub
– Base repository
– Private vs Public
– Solr for Sitecore
LASUG ONLINE #1 @vasiliyfomichev29
Common questions
LASUG ONLINE #1 @vasiliyfomichev
1. Docker client versus host
• Docker client is a command line interface (CLI) Docker
• Docker host is a Linux/Windows VM running Docker daemon
2. Docker Linux and Windows hosts
• You can only create the same container as the underlying host VM - Linux host = Linux containers
3. Docker Image vs Docker Container
• Image = The definition – literally a single file [My Website]
• Container – An instance of an image [3 instances of My Website]
4. Cloud Registry Service and Public Image Repos
• Unlimited public repos, one free private or buy private repos
• 50,000+ images - Wordpress, Nginx, Redis, MySQL, Logstash, and your images!
• Docker Trusted Registry – Dedicated registry application deployable on-premise or direct from Azure
Marketplace
5 common Docker questions
LASUG ONLINE #1 @vasiliyfomichev
5 common Docker questions
5. Deployments replace instead of update
“Immutable infrastructure”
Website
Update your app using
Web Deploy or CI/CD
Docker
Replace running
containers using CI,
Don’t update the old
container
LASUG ONLINE #1 @vasiliyfomichev32
Complementary tools
LASUG ONLINE #1 @vasiliyfomichev
Some Other Docker Concepts
Compose
Define and deploy a multi-container
application
Swarm
Pool of hosts treated as a single unit, control
over multi-container environments
Docker Machine
Create and manage Docker instances locally
and on the cloud.
LASUG ONLINE #1 @vasiliyfomichev
Docker Compose Example
LASUG ONLINE #1 @vasiliyfomichev
Docker Swarm
• Adds a collection of virtual machines into one logical
cluster.
• Same Docker API
• Elect a leader to receive commands and send to cluster
• Scheduler
• Constraints – set a label on a VM/Node so matching containers use that VM
(ex: region=us-west)
• Affinities – Filters for labels, image, containers
• ex: -e affinity:container==frontend)
• Various Strategies
LASUG ONLINE #1 @vasiliyfomichev
Wrapping Up
• Containers Ease Development & Ops
• Force a conversation of scalable design
• Ease of movement (On Prem, AWS, Azure)
• Immutable Infrastructure
• Use Docker Hub repositories for base images
• Run Solr and Mongo in containers
• Run Sitecore in containers (coming soon) Really soon!
LASUG ONLINE #1 @vasiliyfomichev
Thank you!
https://www.linkedin.com/in/vasiliyfomichev
@vasiliyfomichev
VASILIY FOMICHEV
http://www.cmsbestpractices.com
Special thanks to Steve Lasker, Microsoft

Mais conteúdo relacionado

Mais procurados

Docker in pratice -chenyifei
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
dotCloud
 
Cloud Foundry the Open PaaS - OpenTour Austin Keynote
Cloud Foundry the Open PaaS - OpenTour Austin KeynoteCloud Foundry the Open PaaS - OpenTour Austin Keynote
Cloud Foundry the Open PaaS - OpenTour Austin Keynote
Patrick Chanezon
 

Mais procurados (20)

Docker benefits v0.1
Docker benefits v0.1Docker benefits v0.1
Docker benefits v0.1
 
321 codeincontainer brewbox
321 codeincontainer brewbox321 codeincontainer brewbox
321 codeincontainer brewbox
 
DCSF19 Docker Containers & Java: What I Wish I Had Been Told
DCSF19 Docker Containers & Java: What I Wish I Had Been ToldDCSF19 Docker Containers & Java: What I Wish I Had Been Told
DCSF19 Docker Containers & Java: What I Wish I Had Been Told
 
Alibaba Cloud Conference 2016 - Docker Open Source
Alibaba Cloud Conference   2016 - Docker Open Source Alibaba Cloud Conference   2016 - Docker Open Source
Alibaba Cloud Conference 2016 - Docker Open Source
 
Docker in pratice -chenyifei
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
 
7+1 myths of the new os
7+1 myths of the new os7+1 myths of the new os
7+1 myths of the new os
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2
 
Enterprise Docker Requires a Private Registry
Enterprise Docker Requires a Private RegistryEnterprise Docker Requires a Private Registry
Enterprise Docker Requires a Private Registry
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzureDocker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
 
Cloud Foundry the Open PaaS - OpenTour Austin Keynote
Cloud Foundry the Open PaaS - OpenTour Austin KeynoteCloud Foundry the Open PaaS - OpenTour Austin Keynote
Cloud Foundry the Open PaaS - OpenTour Austin Keynote
 
The Evolution of Glance API: On the Way From v1 to v3
The Evolution of Glance API: On the Way From v1 to v3The Evolution of Glance API: On the Way From v1 to v3
The Evolution of Glance API: On the Way From v1 to v3
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
DockerCon SF 2015: Keynote Day 1
DockerCon SF 2015: Keynote Day 1DockerCon SF 2015: Keynote Day 1
DockerCon SF 2015: Keynote Day 1
 
Alibaba Cloud Conference 2016 - Docker Enterprise
Alibaba Cloud Conference   2016 - Docker EnterpriseAlibaba Cloud Conference   2016 - Docker Enterprise
Alibaba Cloud Conference 2016 - Docker Enterprise
 
The Docker Ecosystem
The Docker EcosystemThe Docker Ecosystem
The Docker Ecosystem
 
DockerCon SF 2015: Ben Golub's Keynote Day 1
DockerCon SF 2015: Ben Golub's Keynote Day 1DockerCon SF 2015: Ben Golub's Keynote Day 1
DockerCon SF 2015: Ben Golub's Keynote Day 1
 
DockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTRDockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTR
 
Microservices: The Right Way
Microservices: The Right WayMicroservices: The Right Way
Microservices: The Right Way
 
Docker Container As A Service - JAX 2016
Docker Container As A Service - JAX 2016Docker Container As A Service - JAX 2016
Docker Container As A Service - JAX 2016
 
Continuous Delivery leveraging on Docker CaaS by Adrien Blind
Continuous Delivery leveraging on Docker CaaS by Adrien BlindContinuous Delivery leveraging on Docker CaaS by Adrien Blind
Continuous Delivery leveraging on Docker CaaS by Adrien Blind
 

Semelhante a LASUG Online: Introduction to Docker and Docker Tools

Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
dotCloud
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
 
Intro Docker october 2013
Intro Docker october 2013Intro Docker october 2013
Intro Docker october 2013
dotCloud
 
Crowbar2 update
Crowbar2 updateCrowbar2 update
Crowbar2 update
osonoi
 

Semelhante a LASUG Online: Introduction to Docker and Docker Tools (20)

Introduction to Containers - SQL Server and Docker
Introduction to Containers - SQL Server and DockerIntroduction to Containers - SQL Server and Docker
Introduction to Containers - SQL Server and Docker
 
Rami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with DockerRami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with Docker
 
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemDocker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
 
OpenStack Summit
OpenStack SummitOpenStack Summit
OpenStack Summit
 
Docker
DockerDocker
Docker
 
Oracle CODE 2017 San Francisco: Docker on Raspi Swarm to OCCS
Oracle CODE 2017 San Francisco: Docker on Raspi Swarm to OCCSOracle CODE 2017 San Francisco: Docker on Raspi Swarm to OCCS
Oracle CODE 2017 San Francisco: Docker on Raspi Swarm to OCCS
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
 
Dockerize the World
Dockerize the WorldDockerize the World
Dockerize the World
 
Docker-Intro
Docker-IntroDocker-Intro
Docker-Intro
 
Dockerize the World - presentation from Hradec Kralove
Dockerize the World - presentation from Hradec KraloveDockerize the World - presentation from Hradec Kralove
Dockerize the World - presentation from Hradec Kralove
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
 
Nordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOpsNordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOps
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Intro Docker october 2013
Intro Docker october 2013Intro Docker october 2013
Intro Docker october 2013
 
Killer Docker Workflows for Development
Killer Docker Workflows for DevelopmentKiller Docker Workflows for Development
Killer Docker Workflows for Development
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Crowbar2 update
Crowbar2 updateCrowbar2 update
Crowbar2 update
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Sebastien goasguen cloud stack and docker
Sebastien goasguen   cloud stack and dockerSebastien goasguen   cloud stack and docker
Sebastien goasguen cloud stack and docker
 
Docker and Microservice
Docker and MicroserviceDocker and Microservice
Docker and Microservice
 

Mais de Vasiliy Fomichev

SUGCON: The Agile Nirvana of DevSecOps and Containerization
SUGCON: The Agile Nirvana of DevSecOps and ContainerizationSUGCON: The Agile Nirvana of DevSecOps and Containerization
SUGCON: The Agile Nirvana of DevSecOps and Containerization
Vasiliy Fomichev
 

Mais de Vasiliy Fomichev (8)

NYC MTC - Generative AI Solutions with Sitecore and Micrososft.pptx
NYC MTC - Generative AI Solutions with Sitecore and Micrososft.pptxNYC MTC - Generative AI Solutions with Sitecore and Micrososft.pptx
NYC MTC - Generative AI Solutions with Sitecore and Micrososft.pptx
 
Sitecore DX - MVP Summit - SUGCON Updates 10.2023.pptx
Sitecore DX - MVP Summit - SUGCON Updates 10.2023.pptxSitecore DX - MVP Summit - SUGCON Updates 10.2023.pptx
Sitecore DX - MVP Summit - SUGCON Updates 10.2023.pptx
 
SUGCON EU 2023 - Secure Composable SaaS.pptx
SUGCON EU 2023 - Secure Composable SaaS.pptxSUGCON EU 2023 - Secure Composable SaaS.pptx
SUGCON EU 2023 - Secure Composable SaaS.pptx
 
SUGCON NA 2023 - Crafting Lightning Fast Composable Experiences.pptx
SUGCON NA 2023 - Crafting Lightning Fast Composable Experiences.pptxSUGCON NA 2023 - Crafting Lightning Fast Composable Experiences.pptx
SUGCON NA 2023 - Crafting Lightning Fast Composable Experiences.pptx
 
Activating massive omnichannel personalization
Activating massive omnichannel personalizationActivating massive omnichannel personalization
Activating massive omnichannel personalization
 
SUGCON: The Agile Nirvana of DevSecOps and Containerization
SUGCON: The Agile Nirvana of DevSecOps and ContainerizationSUGCON: The Agile Nirvana of DevSecOps and Containerization
SUGCON: The Agile Nirvana of DevSecOps and Containerization
 
Blockchain in E-Commerce
Blockchain in E-CommerceBlockchain in E-Commerce
Blockchain in E-Commerce
 
The Road to Amazon and Beyond
The Road to Amazon and BeyondThe Road to Amazon and Beyond
The Road to Amazon and Beyond
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

LASUG Online: Introduction to Docker and Docker Tools

  • 1. Introduction to Docker and Tools VASILIY FOMICHEV SOLUTIONSARCHITECT
  • 2. LASUG ONLINE #1 @vasiliyfomichev2 VASILIY FOMICHEV SOLUTIONARCHITECT VERNDALE • SitecoreTechnology MVP • Technology enthusiast • Passionate about innovation • cmsbestpractices.com https://www.linkedin.com/in/vasiliyfomichev @vasiliyfomichev INTRODUCTION
  • 3. LASUG ONLINE #1 @vasiliyfomichev3 WHAT ARE WE LOOKING AT? Today’s development model What are “containers” How can docker help in the sitecore world? Demos Ubuntu on Docker Solr on Docker Mongo on Docker Docker Machine Provision Digital Ocean Droplet Provision AzureVM Where is this headed?
  • 4. LASUG ONLINE #1 @vasiliyfomichev4 WHAT’STHE PROBLEM?
  • 5. LASUG ONLINE #1 @vasiliyfomichev DEVOPS CHALLENGES • Local environment setups are getting more complex • Environment differences allow for bugs in applications • Manual setup it too complex and time consuming • Human error • Scalability issues on prem • Inability to reproduce production environment locally for debugging • Inability to easily sync all Sitecore environments • Lack of QA and other types of reproducibility
  • 6. LASUG ONLINE #1 @vasiliyfomichev6 WHAT ARE “CONTAINERS”?
  • 7. LASUG ONLINE #1 @vasiliyfomichev Before Container Standards
  • 8. LASUG ONLINE #1 @vasiliyfomichev Shipping Containers Invented https://en.wikipedia.org/wiki/Malcom_McLean In 1956, most cargo was loaded and unloaded by hand. Hand-loading a ship cost $5.86 a ton. Malcom McLean born in 1913 developed the modern intermodal shipping container, which revolutionized transport and international trade. McLean knew "A ship earns money only when she's at sea," and based his business on that efficiency. Using containers, it cost only 16 cents a ton, a 39-fold savings. Containerization also greatly reduced the time to load and unload ships, improving reliability.
  • 9. LASUG ONLINE #1 @vasiliyfomichev
  • 10. LASUG ONLINE #1 @vasiliyfomichev Hosting Containers
  • 11. LASUG ONLINE #1 @vasiliyfomichev
  • 12. LASUG ONLINE #1 @vasiliyfomichev Docker is growing (18,000% growth)
  • 13. LASUG ONLINE #1 @vasiliyfomichev Enterprises Rapidly Adopting Docker Small, 30% Midsize, 15% Large, 56% Company Sizes Using Docker
  • 14. LASUG ONLINE #1 @vasiliyfomichev Container !=VM • VM’s • Full instances of the entire OS • Not easily multi-instanced ~SysPrep • Containers • Layered elements of the OS + Components • Easily Duplicated, Start/Stop • Lightweight OS (Tiny Core Linux &Windows Server Core)
  • 15. LASUG ONLINE #1 @vasiliyfomichev How tiny is tiny? • ~24MB download!Whaaaat?! • Runs completely from RAM • Minimal Requirements: • 46MB of RAM • i486DX CPU (introduced in 1989, 50MHz, 8KB cache) • Recommended Requirements: • 128MB+ of RAM • Pentium 2 CPU SUGCON NORTH AMERICA 15
  • 16. LASUG ONLINE #1 @vasiliyfomichev Server Core Requirements • Minimum Requirement: • 256-512MB of RAM • 1GHz (x86) or 1.4Ghz (x64)CPU • Recommended • 512MB+ • 2GHz+CPU SUGCON NORTH AMERICA 16
  • 17. LASUG ONLINE #1 @vasiliyfomichev Container Comparison • Immutable infrastructure! • Fast startup (lightning fast!) • Portable & light-weight • A unit of deployment • Ease of creation • Each container can become a portion of the entire app • May have multiple containers that make up one or more than one app
  • 18. LASUG ONLINE #1 @vasiliyfomichev Why Containers? Developers Enable ‘write-once, run-anywhere’ apps Enables microservice architectures Great for dev/test of apps and services (thousands available from Docker) Reproducibility Operations Portability, Portability, Portability Standardized development, QA, and prod environments Abstract differences in OS distributions and underlying infrastructure Easily scale-up and scale-down in response to changing business needs DevOps
  • 19. LASUG ONLINE #1 @vasiliyfomichev Hosting Containers Locally with: • Docker Toolbox (Linux) • Hyper V (Windows) Physical Servers • Linux (Linux) • Windows 2016 TP3 (Windows) Clouds • Azure (Linux & Windows) • Digital Ocean (Linux) • AWS (Linux) • Google (Linux) • Rackspace (Linux) • …etc. AzureOn Premises Service ProviderLocally
  • 20. LASUG ONLINE #1 @vasiliyfomichev Docker Distribution
  • 21. LASUG ONLINE #1 @vasiliyfomichev Dockerfile
  • 22. LASUG ONLINE #1 @vasiliyfomichev Windows Server Containers Creation, deployment, and management Developers Containers pushed to central repository Operations automates deployment and monitors deployed apps from central repository Operations collaborates with developers to provide app metrics and insights Developers update, iterate, and deploy updated containers
  • 23. LASUG ONLINE #1 @vasiliyfomichev Infrastructure Cloud On Premises Service Provider Container Technologies Container Management PowerShell OthersDocker Development Environment s Others…
  • 24. LASUG ONLINE #1 @vasiliyfomichevSUGCON NORTH AMERICA 24 SITECORE AND CONTAINERS
  • 25. LASUG ONLINE #1 @vasiliyfomichev Mongo on docker • Simple configuration – Single instance – Replica set (development) • Scaled configuration – Scale horizontally – Sharding – Replica sets
  • 26. LASUG ONLINE #1 @vasiliyfomichev Solr on docker • Simple configuration – Single instance – Solr Cloud (development) • Scaled Configuration – Scale horizontally – Sharding – Replica sets – Cloud
  • 27. LASUG ONLINE #1 @vasiliyfomichev Sitecore on Docker (coming!) • SimpleConfiguration – Single instance – Scaled CD/CM environments (development) • Scaled configuration – Highly scaled infrastructure – Load balanced server instances
  • 28. LASUG ONLINE #1 @vasiliyfomichev Docker Hub • Docker Hub – Base repository – Private vs Public – Solr for Sitecore
  • 29. LASUG ONLINE #1 @vasiliyfomichev29 Common questions
  • 30. LASUG ONLINE #1 @vasiliyfomichev 1. Docker client versus host • Docker client is a command line interface (CLI) Docker • Docker host is a Linux/Windows VM running Docker daemon 2. Docker Linux and Windows hosts • You can only create the same container as the underlying host VM - Linux host = Linux containers 3. Docker Image vs Docker Container • Image = The definition – literally a single file [My Website] • Container – An instance of an image [3 instances of My Website] 4. Cloud Registry Service and Public Image Repos • Unlimited public repos, one free private or buy private repos • 50,000+ images - Wordpress, Nginx, Redis, MySQL, Logstash, and your images! • Docker Trusted Registry – Dedicated registry application deployable on-premise or direct from Azure Marketplace 5 common Docker questions
  • 31. LASUG ONLINE #1 @vasiliyfomichev 5 common Docker questions 5. Deployments replace instead of update “Immutable infrastructure” Website Update your app using Web Deploy or CI/CD Docker Replace running containers using CI, Don’t update the old container
  • 32. LASUG ONLINE #1 @vasiliyfomichev32 Complementary tools
  • 33. LASUG ONLINE #1 @vasiliyfomichev Some Other Docker Concepts Compose Define and deploy a multi-container application Swarm Pool of hosts treated as a single unit, control over multi-container environments Docker Machine Create and manage Docker instances locally and on the cloud.
  • 34. LASUG ONLINE #1 @vasiliyfomichev Docker Compose Example
  • 35. LASUG ONLINE #1 @vasiliyfomichev Docker Swarm • Adds a collection of virtual machines into one logical cluster. • Same Docker API • Elect a leader to receive commands and send to cluster • Scheduler • Constraints – set a label on a VM/Node so matching containers use that VM (ex: region=us-west) • Affinities – Filters for labels, image, containers • ex: -e affinity:container==frontend) • Various Strategies
  • 36. LASUG ONLINE #1 @vasiliyfomichev Wrapping Up • Containers Ease Development & Ops • Force a conversation of scalable design • Ease of movement (On Prem, AWS, Azure) • Immutable Infrastructure • Use Docker Hub repositories for base images • Run Solr and Mongo in containers • Run Sitecore in containers (coming soon) Really soon!
  • 37. LASUG ONLINE #1 @vasiliyfomichev Thank you! https://www.linkedin.com/in/vasiliyfomichev @vasiliyfomichev VASILIY FOMICHEV http://www.cmsbestpractices.com Special thanks to Steve Lasker, Microsoft

Notas do Editor

  1. https://en.wikipedia.org/wiki/Reefer_ship
  2. Source: http://www.slideshare.net/fullscreen/Docker/dockercon-15-keynote-day-2/4
  3. Source: http://www.slideshare.net/fullscreen/Docker/dockercon-15-keynote-day-2/4
  4. And don’t just take our word for it. This is a resulting chart from a regular survey done by ETR, an independent research firm. In roughly the 10 year history that they have been doing this, they have never seen the kind of adoption jump like they have for Docker. This is also based on responses from over 3,000 CIO’s from some of the largest and well known names in industry. Most noteably that the adoption intent went from nothing to over 40% literally overnight.
  5. https://en.wikipedia.org/wiki/Reefer_ship
  6. https://en.wikipedia.org/wiki/Reefer_ship
  7. https://en.wikipedia.org/wiki/Reefer_ship
  8. https://en.wikipedia.org/wiki/Reefer_ship
  9. https://en.wikipedia.org/wiki/Reefer_ship
  10. https://en.wikipedia.org/wiki/Reefer_ship