Я новичок, который только начал изучать Docker. Я слышал, что контейнеры используют ядро хост-машины, поэтому рассмотрим следующий сценарий: предположим, что у меня есть хост-машина A с версией ядра Linux x и контейнер B, основанный на версии ядра Linux y, где y больше x. Могу ли я скомпилировать и запустить программу P внутри контейнера B?"
"Я понимаю, что если программа P косвенно вызывает системный вызов, представленный в версии y ядра Linux, при запуске она фактически будет использовать хост ядро машины, поскольку оно напрямую взаимодействует с ядром хоста. Если ядро хоста не предоставляет этот системный вызов, программа выйдет из строя, когда достигнет этого системного вызова. Верно ли мое понимание? Если да, то одной из лучших практик при использовании Docker было бы обеспечение совместимости между операционной системой хоста и операционной системой в контейнере (по крайней мере, для Linux)?"
Подробнее здесь: https://stackoverflow.com/questions/792 ... e-containe