I understand that there may be two potential sources of incompatibility between a Docker image and a host:
- The Docker version of the target system (presumably there may at one point be problems if very new images need to run on very old hosts
- Any library that does system calls, in particular libc
I’d like to understand, when the latter will emerge: when the image ist run and the first application in the image loads the libc contained in the image (so the loader would complain about a mismatch), or sometime later when a system function is called that is not available in the kernel ?
BTW: I have tried to provoke a failure with an Ubuntu 16.04 image running on an Ubuntu 12.04.5, but have failed to find any problems with simple toy applications, even though 12.04 uses a far older kernel than 16.04 would, and the libc contained in the image is far newer (albeilt with the same major number 6).
Thanks and Best Regards,