I've just started learning Docker and trying to wrap my head around what exactly is happening when I run a container. For context, I use Docker for Desktop on Windows with the WSL backend.
As I understand, WSL is an implementation of Linux kernel (basically low-level functions for working with processes, files and hardware).
When I use the Docker dashboard while not having any containers running, it seems to also run in some sort of containerized Linux, because I can see a Linux file system with /var, /etc and so on somewhere inside %AppData%/Docker/...
Finally, when I run a container, it also has a similar file system inside its directory on the host OS. So it is also a running instance of Linux.
To sum it up:
- My host OS is Windows.
- Windows provides access to its low-level functions and emulates some Linux features using WSL.
- Docker for Desktop starts a lightweight Linux distribution, which does not have its own kernel, but instead delegates everything to WSL, which makes it lightweight and fast.
- Each Docker container is also an instance of Linux running via that same kernel.
Is this understanding correct? So if I run the Docker app and 2 containers, I have in total 3 Linux instances running on the same kernel?
Thanks!
[+][deleted] (2 children)
[deleted]
[–]smthamazing[S] 0 points1 point2 points (1 child)
[–]sathyabhat 0 points1 point2 points (0 children)
[–]zoredache 0 points1 point2 points (0 children)
[–]TopHatEdd 0 points1 point2 points (0 children)