DevOps Classroomnotes 22/Aug/2023

What does docker container provide

  • Every application needs
    • a process to execute as this allocates CPU and RAM
    • a network interface for accessing the application
    • a storage space or mounts which will have os and other necessary contents
  • As we have observed in the class all of the above were present in linux as well as windows server or vms
  • Now lets login into container and explore. As we have seen container also has network interfaces, its own process treee which starts from pid1 and a filesystem from / (root)
  • As of now container is an isolated area which has its own
    • process tree
    • network interface
    • file system
    • users

How are these created

  • The isolations are created with the help of namespaces
    • process namespace
    • mount namespace
    • net namespace
    • user namespace
  • The limitations or restrictions on isolated areas can be acheived using control groups
  • Initially docker used lxc (linux containers) to create containers. LXC are part of linux kernel releases
  • Docker has created a component which is called as libcontainer, which is a low level component to create containers using namespaces and cgroups.
  • Refer Here this article

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

About continuous learner

devops & cloud enthusiastic learner