Exploring Docker In-Depth: A Repository for Key Concepts and Essential Topics in Containerization

This repository is somewhat incomplete, but in it you will find important topics related to Docker. I am not exhaustive on everything, but it will give you some inspiration on the topics mentioned, so keep track.

The most important topics included so far:

  1. Why did the concept of virtualization appear in 1960?.
  2. Virtualization.
  3. Brief about Base Image and the Differencing Disk in virtual machines.
  4. Containers.
  5. How do containers depend on the kernel? Or what technology in the kernel enables this?
  6. The technology that is provided to deal with this container concept.
  7. Crucial concept between a virtual machine and a container.
  8. Docker Installation.
  9. Docker Engine.
  10. Docker client and Docker daemon communication.

Feel free to contribute to make it a good reference for beginners one day.

Repository Link: DockerInDeep

It is always good to see projects to help the community, so thank you for your contribution.

One small note. You shared a link to the installer script and the documentation. In the repository of the installer script they mention it is not for a production system, but people might not read that so I think it would be a good idea to mention it in your own repo as well.

1 Like

I didn’t notice that; I’ll point it out.
Thanks for your feedback:D

small note: while there is one type of namespaces that isolates PIDs (and not processes), there are further types of kernel namespaces: for networking, for mount points, etc. That is an aspect that is completely different from traditional VM virtualization. The PID namespaces are hierarchical, so processes in the host PID namespace can see all container (child) processes, but not vice versa. Other namespaces, such as network namespaces, are flat instead.

fun fact: if a container process is in host PID namespace and has sufficient capabilities, it can read the files in other containers through the process filesystem, it just needs the PID of one of the other container’s processes. Has very useful applications for accessing files in other containers without starting a shell in them…

1 Like

Thanks for your notes; I appreciate that. I am currently working here to clarify all the namespaces, not in nitty-gritty details but still good for anyone to start. I will refer to it once I’m done in the DockerInDeep repository.