Skip to main content

Containers

To know about container importance,we need to know about virtual machine.

Virtual Machine :
        Virtual machine help us to run other operating system in host operating system.

Uses of Virtual machine
  • Malware Analysis - Without infecting the host machine we can able to analysis how the malware in virtual machine
  • Huge software project require lot of dependency and lot of configuration. so they bundle everything in a container and transfer through virtual machine
  • In serving different server ( hosting company )
  • Virtual lab - For learning
what's wrong with virtual machine?
  • Virtual machine is awesome but it take more resource which cannot afford by more people. 
  •  Not good as host machine when accessing hardware ( In Mac you cannot able to access wifi from virtual machine)

Containers?
  • Container provide operating system level virtualization there by we can able to run multiple isolated environment in same host system.
  • It provides a virtual environment that has its own CPU, memory, block I/O, network.
Building blocks of containers
  • Namespaces - provides isolation
  • cgroups - access the limits of the cpu,memory,network.
  • copy-on-write storage - duplicate the data of modifiable resources
The container can be build from the above three things and chroot ( change root ) gives as the ability to switch to other environment (From one system control to other system control). To create a container you need container engine which perform the necessary steps for you and gives you a isolated environment

Container Engines
  • Docker
  • runC
  • LXC - Linux containers
  • rkt - rocket container
  • systemd-nspawn
  • OpenVZ
  • Jails/Zones
Using one of the above technology we can able to deploy a container.
Container helps many developers to deploy and transfer their configuration easily across the world.

Anything else
    Yes there is,Kubernetes
  • Helps in managing containers 
  • Kubernetes facilitates both declarative configuration and automation. 
  • It has a large, rapidly growing ecosystem. 
  • Kubernetes services, support, and tools are widely available.


Comments

Popular posts from this blog

My experience in iOS Hackathon

This is my second hackathon, my first hackathon was on machine learning if you want to check out that article by following the below link https://thangaayyanar.blogspot.com/2018/02/what-i-learned-from-machine-learning.html So let's get started First let us discuss about the idea of what we are trying to achieve in this hackathon. From the above image you can able to know that we are going to recognize text from the image and use it to do find which field it is.  we separated this idea into three modules Identify the region Recognize the text  Field classification Module I : Identify the region To identify the selected region we used Vision framework ( ML framework provided by apple to detect the object ). The vision framework give us the boundary of the text region ( i.e frame - x,y,width,height ).  Then using the above region we crop the selected region and pass it to the next module. Module II : Recognize the text To recognize the text we ...

Docker

Docker is used to run software packages called "containers". Containers are isolated from each other and bundle their own tools, libraries and configuration files; they can communicate with each other through well-defined channels                                                                                                --Wikipedia  I have already written a article about the containers you can check out in here https://thangaayyanar.blogspot.com/2018/06/containers.html This time, let's learn more about docker engine how we can use this. The important things we need to know in docker are Docker Image:  The container can be created with the help of Image. The Image file consists of code, libraries, environment variable...

My First Open Source Contribution

It's my dream to contribute to open source. It is all started in 2 year of college i came to know the linux is so much awesome to work and learn about computer and know about github where you can find the open source software code. I thought, I need to learn more to contribute to the software community later i read lot of article about contributing to opensource. Every article say Learn a programming language you like. Find a project written in programming language you choose. Read it. Use it. Find any bug open a issue. Fix the issue Seems like simple as pie. I thought let's give it a try My scenario I use C to solve program in hackerrank and other coding sites and i know little bit about C++ and java at the time. when i searched for the project, all project are seems to be dinosaur huge, Finally i convinced myself and pick a project. I started reading the source code. It donot understand lot of code and i donot know where to find those answers. then frus...