Introduction to Docker
What is Docker, Really?
Everything you need to know 🐳
Docker is a platform that can make deploying applications easier. It’s an Open Source container that basically allows you to package the components of your application easily. Docker applications can then be run on any other machine and have the same functions.
Where can I use Docker?
Docker streamlines the development lifecycle by allowing developers to work in standardized environments using local containers which provide your applications and services. — Docker Docs
That simply means that you don’t have to worry about having different configurations on different systems — Your code can be packaged as one Dockerfile and shipped across the board. Dockerfiles are extremely portable and lightweight, which simplifies the process for you.
What is a Container?
Container is a software that packages up the code and all its dependencies so that your applications runs as shipped. Suppose you develop your application on Windows and need to deploy it to a Red Hat OS — Of course you will get problems!
Containers combat this issue by packaging all the dependencies of a software into one Container Image and you can ship it as is. Docker was released in 2013, but has been then used by almost all major Software Companies.
A Container is not a Virtual Machine.
You might think Virtual Machines can do the same task! But Containers and VMs are two different softwares. Docker Containers, for example, do not include individual Operating Systems, they explout the kernel to make the application run without a hitch. Containers usually have a lower overhead than a Virtual Machine by virtue of not having an OS layer.
The Architecture of Docker
From Docker Docs
Docker is a Client-Server: The Docker Daemon is the Server, Docker Client is the — well, Docker Client. Docker Daemon manages the images, containers, networks and volumes and interfaces with the client via an API. Docker Client connects to the Daemon for the API.
docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
The command above will contact the Daemon and run your requests, depending on your parameters. If it can’t find the image, it will search for the image on the registry (Like Docker Hub).
To get started with Docker, check this out!
🌺 Hey, hope you enjoyed reading that article. I am Abhinav, editor @ The Crypto Element. It takes a lot of work to research for and write such an article, and a clap or a follow 👏 from you means the entire world 🌍 to me. It takes less than 10 seconds for you, and it helps me with reach! You can also ask me any questions, or point out anything, or just drop a “Hey” 👇 down there. I 💓making new friends!