Docker: Simplifying Application Containerization
Docker is the most widely used platform or container runtime used to containerize applications.
Containerization means packing the application with all its dependencies and runtime into small standalone, lightweight packages that can be deployed on underlying compute infrastructure like EC2, ECS clusters, and AWS Fargate.
These containers don't have their own OS but share the OS from the underlying host server. This makes them lightweight and faster to deploy.
Steps to containerize:
First, a Dockerfile is created, which has the information about the dependencies needed, specified using the RUN command. The CMD or ENTRYPOINT command is used to specify the application runtime that should run when the container is deployed.
Now, this Dockerfile is used to build a Docker image, which is the deployable format of the Dockerfile. This image is stored in an image registry like DockerHub.
Finally, this image is used to create a Docker container using the Docker runtime or the Docker daemon, which is the main process that creates the container.
The Docker engine, which is the brain, consists of the Docker CLI, Docker daemon, and Docker Hub.
In conclusion, Docker helps us to create and manage Docker containers, which are the packages of applications and dependencies running on underlying computing resources.
Subscribe to my newsletter
Read articles from Saransh Goyal directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by