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