<p>I have recently learned a course of Docker from Udemy but I am having problem understanding what is actually an Image in Docker world is?</p>
<p>What I have learned is that when Docker runs on our system, it itself is a Virtual Machine running Linux Operating System on it. That Linux operating system runs several Containers from Images we provide. A Container has its isolated space on the hard drive, its own Memory and CPU allocated, but unlike a Virtual Machine it is not having a full blown operating system of its own.</p>
<p><code>But, because I have learned that the Containers share a single operating system, I am confused about the Images we build for running a Container.</code> Because I see that to build a Docker Image, we first of all load a Base Image (Which itself seems to me as an operating system like... <code>FROM Alpine</code> etc..). Then when there is an operating system in the Image itself, why it is said that Containers share the single host Operating System?</p>

<p>It is a bit misleading to say that the containers share a single operating system. What they share is the kernel, but not the libraries and support programs that typically come with an OS like cp, or bash.</p>
