Docker
It comes in picture at deployment.
Solve issues related to deployment. AND make it compatible to each environment.
Frontend + backend + db + server each for every machine should be configured.
Solve the problem by containers. Example: Shipping in form of container
Definition:
Make easy to deploy using container which contain all the dependency and code and ship the entire
package. Docker take care of shipping on each platform.
Flow:
Docker File: Describe steps to make a docker Image.
Docker Image: Contains all required plugins and dependency and creates Docker Container.
Docker Container have runtime instances of docker image.
These image can be uploaded on cloud called Docker Hub.
Virtualization And Containerization:
Benefits:
Build only once. No need to configure or build multiple time.
Portability
Version control like git
Isolation
Productivity
Kubernetes:
Open source orchestration tool
Developed by Google
Manage Containerized application in diff env.
Monolithic->microservice
Lots of Containers for each maintenance required.
What offers?
High availability or no downtime.
Scalability or High Performance.
Disaster Recovery->backup & restore
Basic Architecture:
Worker needs many resources but the master is important than individual worker node.
API server: Entry point K8S cluster
Controller manager: track of nearby
Schedular: ensures pods placement.
Etcd: backing store(current state)
Virtual network: conversation of master and worker node.
Pods:
Smallest unit of Kubernetes cluster is pod.
Each pod can have one or multiple container.
It has own self contained server. Talk thru ip to each other.
Created frequently when one dies with new IP address.
In place of IP services talks to each other.
Openshift:
Redhats’s cloud enable PaaS.
Opensource technology which helps org. to move their traditional application and platform from
physical virtual machine medium to cloud.
Docker
When we develop a software we give other people to run it on their system
And if the configuration change run fails
To solve the issue virtualization comes into the picture we make
Hardware->OS->Hypervisor(virtual hardware)->GuestOS->application
We can copy this guest os and can give it to other people so it can be run successfully as the system
remains same
But lots of memory and ram wasting occurs in this
Containerization
Hardware->OS->Docker->container->application
Can make multiple container. It can be converted to docker Image a light weight file of a container we
can provide that to other people and they can run it
Container has all the required configuration to run an application.
Docker has:
Dockerfile to convert in image
Docker hub : here we can find most of the image like for mongodb etc
Volumes
Docker commands:
Docker search image-name Searches the images with specific name in hub
Docker pull mage-name Download the image in container
Docker create image-name Creates the image in container
Docker start container-id Start the container
Docker stop c-id stops
Docker pause c-id pauses
Docker image image-name Image details
Docker ps Container details which in running
Docker ps -a All container details
Docker images All images that are already pulled
Docker help Help for all cmd
Docker rm container-id To remove the conatiner
Docker rmi image-id To remove the image
Docker Architecture:
Daemon+volumes+hub
Cloud
Combination of multiple servers where each server has resources for project and provide a
domain.
Elastic cloud computing
Example:gmail,google
Types of cloud
Iaas Caas
Function Function
Application Application
Runtime & containers Runtime & containers
Operating systems & management Operating systems & management
tools tools
Network storage & servers Network storage & servers
Data centers Data centers
Paas Faas
Function Function
Application Application
Runtime & containers Runtime & containers
Operating systems & Operating systems & management
management tools tools
Network storage & servers Network storage & servers
Data centers Data centers
Saas On premises Cloud: shared
Function Hybrid: Some confidential data on private
Application cloud and some is on public cloud
Runtime & containers
Operating systems &
management tools
Network storage & servers
Data centers