Here is a high level overview of containers and VMs
https://www.docker.com/what-container#/package_software
The goal is to test the application on different Linux Distros such as CentOS,Fedora,Ubuntu,Debian,etc.
Either I can have individual VMs for each Distro or I can use individual containers with different base images, the latter for less overhead is more preferred.
I see that the containers share the same host kernel irrespective of the base image. As seen below the kernel version of both centos and ubuntu containers is the same, i.e #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018. However, since each base OS has its own isolated binaries and libraries, does that mean using different base images in containers be equivalent to testing on different distros as if they were installed in a VM ?
keerats@keerats:~/docker_build$ docker run -it ubuntu bash -c 'uname -a'
Linux 69e1a378a1f2 4.13.0-36-generic #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
keerats@keerats:~/docker_build$ docker run -it centos bash -c 'uname -a'
Linux c89b06e02cf0 4.13.0-36-generic #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux