Introduction
In this article, we will discuss about Docker, is an open-source lightweight virtualization tool which runs at top of Operating System level, allowing users to create, run and deploy applications, encapsulated into small containers.
Usage
Consider a scenario that a code work on the
developer system
,but that same code does not work on the testing environment. Docker resolves this issue that a code working on one system and does not
working on
other platform. Docker comes
in the deployment stage. It helps
in the deployment of
application.
Docker is the world's leading software container platform. Docker is a tool designed to make it
easier deploy and run
application with container and container allows a developer to package that application with all of its dependencies
in to a box and ship the entire package. A developer will concern only developing a code and
fill package with all the dependencies
in to a container and will not worry about how it will be deployed and what all platforms it has to be deployed and so on.
Workflow
A developer will define all dependencies and libraries in a file called docker file can be used to create docker image. In a
docker image you will have all the dependencies and requirements of an application, when you run a
docker image you get a docker container. Docker containers are run time instances of a docker image. These images are also
be stored in
online cloud repository called as docker hub. You can also store docker images on your local repository.
Virtualization
Using Hypervisor we can create multiple Virtual Machines in a host Operating System
. We have to allocate a fixed memory and CPU, This will waste our resources. In case of docker container, the memory, space and other resources are not fixed, It will be taken as per the needs of
application. It is lightweight and fast.
Architecture
Docker has a client server architecture.
In docker command interface is the client and we have a docker
server which will have all the containers. Docker server receives
command from
client in the form of a commands or
REST API request
Advantages
- Resolves the issue of code working on one system and not working on other system.
- You can build your application on only once and there is no need to build and configure it multiple times on different environments or platforms.
- Our applications can work in multiple environment with docker container.
- Portability.
- You can do version controlling on docker images.
- Isolation: Your application does not interfere any other applications in your host machine.
- Docker makes deployment very easy,efficient and faster.
Limited mode
source, lightweight virtualization tool which runs
on top of
the Operating System level
×
No comments: