Docker -A new direction to technology
In this blog ,I will be sharing what I gain from learning docker with you and will share my complete experience of learning and using docker for production purposes.
Docker is a tool that is widely is used in Devops , software development testing big data ,microservices ,IOT etc.but as far the scope of this blog series is concerned let's keep it to Devops and and a bit towards some AWS services
So let's start with the very basic What is Containerisation?
Let's take a example you want to transport a puzzle to your friend via a ship .You can either complete the whole puzzle and then send it as it is along with all the on instructions how to build it.
Docker works in the same way and therefore the logo is that of a container.What Docker does is it packages all the dependencies into one file which can be shared easily.
Containerization:It is a technology that allows you to bundle an app and all of its dependencies into a single , compact unit known as a container.This container can then be run reliably across multiple environments from your home computer to a production server .
To understand Containerization relate to traditional software development approaches.
In a typical deployment,an application and all of its dependencies ( such as libraries and frameworks) are stored on server.
Installation
Installing Docker is a simple and can be done following the documentation given
in the https://docs.docker.com/get-docker/
Important thing to remember for Mac with the Intel chip you need to have Mac os gg version 11 or newer and at least 4 GB of RAM.
For Mac Apple silicon ,you need to install Rosetta first , which converts apps made for Intel chips compatible with Apple silicon .
Docker Images
Docker images are templates that contain a set of instructions for creating a docker container.They are essentially a snapshot of a docker container at a specific point in a time .Images are built using a dockerfile ,which is a text file that contains a set of instructions for building the image.
When you run a Docker ,Docker uses the image as a template to create a new container instance
Containers
The container is essentially a runtime environment that is isolated from the host system, allowing you to run applications and services in a predictable and reliable way.Docker containers are designed to be lightweight and portable,which makes them an ideal solution for deploying applications in a variety of environments, including development, testing and production
In this blog,I have tried covering the prerequisite knowledge to work with docker .We will be doing hands on learning on learning by downloading images , running containers and debugging containers and will also learn a bit about the components of docker ,docker files and volumes .In the subsequent blog which would be docker for dummies 3.0 we'll do docker compose ,learn a bit about private repositories (AWS ECR),and the best practices which revolve around docker
Some great video resources to start with -
Kunal Khushwaha -https://youtu.be/17Bl31rlnRM
Tech world with Nana-https://youtu.be/3c-iBn73dDE
If you find the blog informative and useful,please consider sharing and liking it.Also keep an eye out for future blog posts.๐
Cheers!
Nikhil Kamode
Subscribe to my newsletter
Read articles from Nikhil Kamode directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Nikhil Kamode
Nikhil Kamode
I like to read books ,watch movies ,like to play cricket