Author : HASSAN MD TAREQ | Updated : 2021/12/12
What Is a Container?
- A container an abstractiom in a way that application code, it’s dependencies and configurations are all packed together simplifying deployment process
- Containers decouple the application from the underlying infrastructure allowing us focusing on application development rather than underlying infrastructure
- Containerization of application fits well into DevOps practice by simplifying CI/CD processes
Containers are isolated from one another but run on a shared OS kernel, making them far more lightweight than virtual machines. This allows more containers to be run on the same physical hardware giving containers an advantage over traditional virtual machines.
Why To Use Container?
- Simplifies and accelerates application development workflows
- Container allows applications to be shuttled easily between environments by encapsulating everything an application needs to run
- Gives developers the freedom to innovate with their choice of tools, application stacks, and deployment environments
- Reduces complexity (multiple languages, frameworks, architectures etc.) of software development lifecycle
- Containers much smaller, faster, and more efficient than Virtual Machines
- Takes away repetitive tasks and makes application development lifecycle fast, easy and portable
- Build once, share and run anywhere, any counts of instances
- Solves “… but it works in my machine” problem