Docker Day 1 – What is Docker, Advantages & Disadvantages.

Table of contents
1.What is Docker?
Docker is an open-source platform that allows us to build, package, and run applications in isolated environments called containers. These containers bundle everything the application needs to run—such as code, runtime, libraries, and system tools—so that the app can run consistently across different systems, whether it's on a developer’s laptop or in production.
This solves the age-old problem of:
“It works on my machine.”
Docker ensures that what works in development behaves the same in staging and production.
2.Advantages of Docker
Portability
Containers can run on any system that has Docker installed, regardless of the underlying OS.Consistency
Same environment across dev, test, and prod helps reduce bugs due to “environment differences.”Faster Deployment
Docker images can be built and deployed in seconds, improving delivery speed.Resource Efficiency
Containers share the same OS kernel, which makes them lighter and faster than traditional VMs.Isolation
Each application runs in its own container, reducing conflicts between services.
3.Disadvantages of Docker
Learning Curve
Concepts like images, containers, Dockerfiles, volumes, and networking can be overwhelming at first.Persistent Storage Challenges
Managing stateful data across container restarts or updates needs extra planning.Security Risks
Containers share the OS kernel, so if not configured correctly, they may introduce security vulnerabilities.GUI Support
Running desktop or GUI-based apps inside Docker can be tricky and often not recommended.
Subscribe to my newsletter
Read articles from Amman Farooque directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
