Dockers / Containers

Docker is a tool designed to make it easier to create, deploy, and run applications by using containers. It made containers easier and safer to deploy. Docker containers are easy to deploy in a cloud. The key difference between containers and VMs is while the hypervisor abstracts an entire device, containers just abstract the operating system kernel.

  • Docker images can be made available to all of your environments through a central registry. A Docker image contains all the dependencies that it needs to run an application within the image.
  • Image layers are cached by the Docker build and push system. There’s no need to rebuild or repush image layers that are already present on a system.
  • Use the Dockerfile to create reproducible builds for your application and to integrate your application with Docker into the CI/CD pipeline.
  • Each line in a Dockerfile creates a new layer, and because of the layer cache, the lines that change more frequently, for example, adding source code to an image, should be listed near the bottom of the file.

Containers – If we package an application code along with all dependencies which can represents an executable unit of software. These executable units are known as Containers. Containers (executable units) are small, fast, and portable. They do not include a guest OS in every instance and can, instead, simply leverage the features and resources of the host OS. Containers allow a developer to package up an application with all of the parts it needs, such as libraries and other dependencies, and deploy it as one package. Containers also promotes a Continuous Integration/Continuous Deployment (CI/CD) methodology which encourage developers to integrate their code into a shared repository early and often, and then to deploy the code quickly and efficiently.

Lets explore more to understand fundamentals of Docker.
Select the following Areas of your Interest.

NOTE : To Determine How Many Nodes You Need

In our lab that we did through the link shown above, Docker Swarm cluster consists of three nodes in which we have one master and two worker nodes. The manager node contains the necessary information to manage the cluster, but if this node goes down, the cluster will cease to function. For a production application, you should provision a cluster with multiple manager nodes to allow for manager node failures.

You should have at least three manager nodes but typically no more than seven. Manager nodes implement the raft consensus algorithm, which requires that more than 50% of the nodes agree on the state that is being stored for the cluster. If you don’t achieve more than 50% agreement, the swarm will cease to operate correctly.

Leave a comment