www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Do you know the following?
Why We Need
Docker? What Is Docker?
Hands-On
Docker Case-Study
1
4
2
6
Docker Components
5
Docker Example
3
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Why We Need Docker?
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Problems Before Docker
An application works in developer’s laptop but not in testing or production. This is due to difference in computing
environment between Dev, Test and Prod.
Code works
fine in my
laptop
There is some
problem with
the code
Dev Prod
In Dev there can be a software that is upgraded and in
Prod the old version of software might be present
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
The idea behind microservices is that some types of applications become easier to build and maintain when they are
broken down into smaller, composable pieces which work together. Each component is developed separately, and the
application is then simply the sum of its constituent components.
Problems Before Docker
Online
Shopping
Service
Product
Catalog
Cart
Server
Order
Server
Account
Service
Account DB
Product DB
Cart DB
Order DB
For example imagine an online shop with separate
microservices for user-accounts, product-catalog
order-processing and shopping carts
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Developing an application requires starting several of microservices in one machine. So if you are starting five of those
services you require five VMs on that machine.
Virtual Machines for starting
multiple microservices
Developer’s
Laptop
Problems Before Docker
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
How Docker Solves These Problems
You can run several microservices in the same VM by
running various Docker containers for each microservice.
Developer’s
Laptop
Virtual
Machine
Docker
Containers
Provides a consistent computing environment
throughout the whole SDLC.
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
What Is Docker?
• Docker is a tool designed to make it easier to create, deploy, and
run applications by using containers.
• Docker containers are lightweight alternatives to Virtual
Machines and it uses the host OS.
• You don’t have to pre-allocate any RAM in containers.
Container 1 Container 2
App 1
BINS/LIBS
App 2
BINS/LIBS
Docker Engine
Host OS
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker In A Nutshell
Docker
File
Project Code
Docker Image
Docker
Container
Virtual Machine
Docker
Hub
Production
Server
Staging
Server
Container
Container
• Docker file builds a Docker image and that image contains all
the project's code
• You can run that image to create as many docker containers as
you want
• Then this Image can be uploaded on Docker hub, from Docker
hub any one can pull the image and build a container
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker
File Git Repo
Push the code
to Git Repo
Complex Requirements
for a microservice are
written in easy to write
DockerFile
Jenkins
Server
Production
Staging
Testing
• Create complex requirements for a microservice within
an easy-to-write Dockerfile.
• Push the code up to the Git Repo.
• CI server pull it down and build the exact
environment that will be used in production to
run the test suite without needing to configure
the CI server at all.
• Deploy it out to a staging environment for
testers.
• Roll exactly what you had in development,
testing, and staging into production
Docker Example
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Case-Study Indiana University
Problem Statement:
Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
VM
Custom
Script
VM
VM
Applications are deployed in
the VMs using custom scripts
1 • Their environment was optimized for their legacy Java-
based applications.
2
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Case-Study Indiana University
Problem Statement:
Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
3 UI
Business Logic
Data Access
Layer
Database
Monolithic Architecture
MicroserviceMicroserviceMicroservice
UI
Database Database Database
Microservice Architecture
The University wanted to improve the way they architect applications, by moving to a
microservices based architecture for their applications
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Case-Study Indiana University
Problem Statement:
Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
4
Security was needed for student’s data such as SSNs and student health
data.
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Case-Study Indiana University
Solution: Docker Data Center (DDC)
Management
Universal Control Plane
Security
LDAP
Registry Services
Trusted Registry
Orchestration
Swarm
Container Runtime
CS Engine
Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Case-Study Indiana University
Docker
Trusted
Registry
UCP
Web UI
It stores the Docker images
Helps in managing whole cluster from a single
place. Services are deployed using UCP web UI,
using Docker images that are stored in DTR. Host A
Host B
Host C
IT ops teams leverages Universal Control
Plane to provision Docker installed
software on hosts, and then deploy their
applications without having to do a
bunch of manual steps to set up all their
infrastructure.
Solution: Docker Data Center (DDC)
Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Registry
▪ Docker Registry is a storage component for Docker Images
▪ We can store the Images in either Public / Private repositories
▪ Docker Hub is Docker’s very own cloud repository
▪ Control where your images are being stored
▪ Integrate image storage with your in-house development workflow
Why Use Docker Registries?
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Images & Containers
▪ Read Only Template Used To Create Containers
▪ Built By Docker Users
▪ Stored In Docker Hub Or Your Local Registry
Docker Images
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Images & Containers
▪ Read Only Template Used To Create Containers
▪ Built By Docker Users
▪ Stored In Docker Hub Or Your Local Registry
Docker Images Docker Containers
▪ Isolated Application Platform
▪ Contains Everything Needed To Run The Application
▪ Built From One Or More Images
run
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Docker Compose
Docker Compose makes it easier to configure and run applications made up of multiple
containers. For the example: imagine being able to define three containers—one
running a web app, another running postgres, and a third running redis—all in one
YAML file and then running those three connected containers with a single command.
web app
postgres
redis
Docker
Compose
File
You can run these three containers
with a single command
Containers
www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATION TRAINING
Thank You
Questions/Queries/Feedback

What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps Tools | Edureka

  • 1.
  • 2.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Do you know the following? Why We Need Docker? What Is Docker? Hands-On Docker Case-Study 1 4 2 6 Docker Components 5 Docker Example 3
  • 3.
  • 4.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Problems Before Docker An application works in developer’s laptop but not in testing or production. This is due to difference in computing environment between Dev, Test and Prod. Code works fine in my laptop There is some problem with the code Dev Prod In Dev there can be a software that is upgraded and in Prod the old version of software might be present
  • 5.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING The idea behind microservices is that some types of applications become easier to build and maintain when they are broken down into smaller, composable pieces which work together. Each component is developed separately, and the application is then simply the sum of its constituent components. Problems Before Docker Online Shopping Service Product Catalog Cart Server Order Server Account Service Account DB Product DB Cart DB Order DB For example imagine an online shop with separate microservices for user-accounts, product-catalog order-processing and shopping carts
  • 6.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Developing an application requires starting several of microservices in one machine. So if you are starting five of those services you require five VMs on that machine. Virtual Machines for starting multiple microservices Developer’s Laptop Problems Before Docker
  • 7.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING How Docker Solves These Problems You can run several microservices in the same VM by running various Docker containers for each microservice. Developer’s Laptop Virtual Machine Docker Containers Provides a consistent computing environment throughout the whole SDLC.
  • 8.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING What Is Docker? • Docker is a tool designed to make it easier to create, deploy, and run applications by using containers. • Docker containers are lightweight alternatives to Virtual Machines and it uses the host OS. • You don’t have to pre-allocate any RAM in containers. Container 1 Container 2 App 1 BINS/LIBS App 2 BINS/LIBS Docker Engine Host OS
  • 9.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker In A Nutshell Docker File Project Code Docker Image Docker Container Virtual Machine Docker Hub Production Server Staging Server Container Container • Docker file builds a Docker image and that image contains all the project's code • You can run that image to create as many docker containers as you want • Then this Image can be uploaded on Docker hub, from Docker hub any one can pull the image and build a container
  • 10.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker File Git Repo Push the code to Git Repo Complex Requirements for a microservice are written in easy to write DockerFile Jenkins Server Production Staging Testing • Create complex requirements for a microservice within an easy-to-write Dockerfile. • Push the code up to the Git Repo. • CI server pull it down and build the exact environment that will be used in production to run the test suite without needing to configure the CI server at all. • Deploy it out to a staging environment for testers. • Roll exactly what you had in development, testing, and staging into production Docker Example
  • 11.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Case-Study Indiana University Problem Statement: Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter VM Custom Script VM VM Applications are deployed in the VMs using custom scripts 1 • Their environment was optimized for their legacy Java- based applications. 2
  • 12.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Case-Study Indiana University Problem Statement: Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter 3 UI Business Logic Data Access Layer Database Monolithic Architecture MicroserviceMicroserviceMicroservice UI Database Database Database Microservice Architecture The University wanted to improve the way they architect applications, by moving to a microservices based architecture for their applications
  • 13.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Case-Study Indiana University Problem Statement: Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter 4 Security was needed for student’s data such as SSNs and student health data.
  • 14.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Case-Study Indiana University Solution: Docker Data Center (DDC) Management Universal Control Plane Security LDAP Registry Services Trusted Registry Orchestration Swarm Container Runtime CS Engine Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
  • 15.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Case-Study Indiana University Docker Trusted Registry UCP Web UI It stores the Docker images Helps in managing whole cluster from a single place. Services are deployed using UCP web UI, using Docker images that are stored in DTR. Host A Host B Host C IT ops teams leverages Universal Control Plane to provision Docker installed software on hosts, and then deploy their applications without having to do a bunch of manual steps to set up all their infrastructure. Solution: Docker Data Center (DDC) Sorce: https://www.docker.com/customers/indiana-university-delivers-state-art-it-115000-students-docker-datacenter
  • 16.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Registry ▪ Docker Registry is a storage component for Docker Images ▪ We can store the Images in either Public / Private repositories ▪ Docker Hub is Docker’s very own cloud repository ▪ Control where your images are being stored ▪ Integrate image storage with your in-house development workflow Why Use Docker Registries?
  • 17.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Images & Containers ▪ Read Only Template Used To Create Containers ▪ Built By Docker Users ▪ Stored In Docker Hub Or Your Local Registry Docker Images
  • 18.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Images & Containers ▪ Read Only Template Used To Create Containers ▪ Built By Docker Users ▪ Stored In Docker Hub Or Your Local Registry Docker Images Docker Containers ▪ Isolated Application Platform ▪ Contains Everything Needed To Run The Application ▪ Built From One Or More Images run
  • 19.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Docker Compose Docker Compose makes it easier to configure and run applications made up of multiple containers. For the example: imagine being able to define three containers—one running a web app, another running postgres, and a third running redis—all in one YAML file and then running those three connected containers with a single command. web app postgres redis Docker Compose File You can run these three containers with a single command Containers
  • 20.
    www.edureka.co/devopsEDUREKA DEVOPS CERTIFICATIONTRAINING Thank You Questions/Queries/Feedback