Docker Basics
Docker Basics
Docker Basics
Uses containerization concept. Consists of light, independent, reliable and fast image
containers having all the application software packages like libraries, code, dependencies.
Docker images transform to containers on runtime on Docker engine and can be executed
on different server platforms and OSes because of its isolated and OS independent
application packages.
Don’t need extra virtual machine or hyper vision to run. Directly use the OS and kernel
of the host machine and multiple application containers can be executed on single OS.
Three basic features of Docker containers: Standard – are portable. Lightweight – use the
systems OS and kernel and don’t’ require extra OS increasing performance, efficiencies
and cost. Secure – applications are safe in containers.
Containers vs VM’s:
Run on the application level containing all dependencies and packages and run in
isolated space.
Can handle more applications with less amount of hardware and VM usage.
Docker desktop used for building docker images and docker containers with
compatibility of different languages, databases.
Docker hub is a repository storage where docker images and containers are upload for
sharing to the cloud and its different providers or for inter-organization use as well.
Mainly used for creating compatible and efficient application containing containers so
that each application is developed in its isolated user space without the need to use extra
VM;s or OSes.
Docker builder tools are CLI plugins that interact with docker desktop and docker engine
to build, test and deploy docker image files and containers. Help in managing image
registries, collaboration for hand-off of the final code between CI/CD and operations
team. Provide test cycles automatically according to development environment.
Competitors of Docker:
Amazon Elastic Container Service (ECS)
Google Kubernetes Engine (GKE)
Amazon Elastic Kubernetes Service (EKS)
Kubernetes (also used by docker)
Azure Kubernetes Engine (AKS)
Red-Hat open shift container platform
Why Docker?
Efficient use of system resources.
Faster delivery cycles.
Application portability and compatibility.
Why not Docker?
No capability for resolving security issues.
Questions:
1. Docker engine?
2. Kubernetes?